提交 970c2d36 authored 作者: Thomas Mueller's avatar Thomas Mueller

Prepare release.

上级 9164f30d
...@@ -18,6 +18,10 @@ Change Log ...@@ -18,6 +18,10 @@ Change Log
<h1>Change Log</h1> <h1>Change Log</h1>
<h2>Next Version (unreleased)</h2> <h2>Next Version (unreleased)</h2>
<ul><li>-
</li></ul>
<h2>Version 1.3.174 (2013-10-19)</h2>
<ul><li>LIRS cache: bugfix for caches that only contain non-resident entries. <ul><li>LIRS cache: bugfix for caches that only contain non-resident entries.
</li><li>For in-memory databases, queries with a "group by" column that </li><li>For in-memory databases, queries with a "group by" column that
is also a hash index threw a RuntimeException. is also a hash index threw a RuntimeException.
...@@ -338,49 +342,5 @@ Change Log ...@@ -338,49 +342,5 @@ Change Log
</li><li>The SCRIPT statements now supports filtering by schema and table. Thanks a lot to Jacob Qvortrup for providing the patch! </li><li>The SCRIPT statements now supports filtering by schema and table. Thanks a lot to Jacob Qvortrup for providing the patch!
</li></ul> </li></ul>
<h2>Version 1.3.166 (2012-04-08)</h2>
<ul><li>Indexes on column that are larger than half the page size (wide indexes)
could sometimes get corrupt, resulting in an ArrayIndexOutOfBoundsException in PageBtree.getRow
or "Row not found" in PageBtreeLeaf. Also, such indexes used too much disk space.
</li><li>Server mode: when retrieving more than 64 rows each containing a CLOB or BLOB,
the error message "The object is already closed" was thrown.
</li><li>ConvertTraceFile: the time in the trace file is now parsed as a long.
</li><li>Invalid connection settings are now detected.
</li><li>Issue 387: WHERE condition getting pushed into sub-query with LIMIT.
</li></ul>
<h2>Version 1.3.165 (2012-03-18)</h2>
<ul><li>Better string representation for decimal values (for example 0.00000000 instead of 0E-26).
</li><li>Prepared statements could only be re-used if the same data types were used
the second time they were executed.
</li><li>In error messages about referential constraint violation, the values are now included.
</li><li>SCRIPT and RUNSCRIPT: the password can now be set using a prepared statement.
Previously, it was required to be a literal in the SQL statement.
</li><li>MySQL compatibility: SUBSTR with a negative start index now works like MySQL.
</li><li>When enabling autocommit, the transaction is now committed (as required by the JDBC API).
</li><li>The shell script <code>h2.sh</code> did not work with spaces in the path.
It also works now with quoted spaces in the argument list.
Thanks a lot to Shimizu Fumiyuki for the patch!
</li><li>If the transaction log could not be truncated because of an uncommitted transaction,
now "Transaction log could not be truncated" is written to the .trace.db file.
Before, the database file was growing and it was hard to find out what the root cause was.
To avoid the database file from growing, a new feature to automatically rollback the oldest
transaction is available now. To enable it, append ;LOG_SIZE_LIMIT=32 to the database URL
(in that case, the oldest session is rolled back if the transaction log is 32 MB).
</li><li>ALTER TABLE ADD can now add more than one column at a time.
</li><li>Issue 380: ALTER TABLE ADD FOREIGN KEY with an explicit index didn't verify
the index can be used, which would lead to a NullPointerException later on.
</li><li>Issue 384: the wrong kind of exception (NullPointerException) was thrown in a UNION query
with an incorrect ORDER BY expression.
</li><li>Issue 362: support LIMIT in UPDATE statements.
</li><li>Browser: if no default browser is set, Google Chrome is now used if available.
If not available, then Konqueror, Netscape, or Opera is used if available (as before).
</li><li>CSV tool: new feature to disable writing the column header
(option writeColumnHeader).
</li><li>CSV tool: new feature to preserve the case sensitivity of column names
(option caseSensitiveColumnNames).
</li><li>PostgreSQL compatibility: LOG(x) is base 10 in the PostgreSQL mode.
</li></ul>
<!-- [close] { --></div></td></tr></table><!-- } --><!-- analytics --></body></html> <!-- [close] { --></div></td></tr></table><!-- } --><!-- analytics --></body></html>
...@@ -17,22 +17,22 @@ public class Constants { ...@@ -17,22 +17,22 @@ public class Constants {
/** /**
* The build date is updated for each public release. * The build date is updated for each public release.
*/ */
public static final String BUILD_DATE = "2013-07-28"; public static final String BUILD_DATE = "2013-10-19";
/** /**
* The build date is updated for each public release. * The build date is updated for each public release.
*/ */
public static final String BUILD_DATE_STABLE = "2013-05-25"; public static final String BUILD_DATE_STABLE = "2013-07-28";
/** /**
* The build id is incremented for each public release. * The build id is incremented for each public release.
*/ */
public static final int BUILD_ID = 173; public static final int BUILD_ID = 174;
/** /**
* The build id of the last stable release. * The build id of the last stable release.
*/ */
public static final int BUILD_ID_STABLE = 172; public static final int BUILD_ID_STABLE = 173;
/** /**
* If H2 is compiled to be included in a product, this should be set to * If H2 is compiled to be included in a product, this should be set to
......
...@@ -169,7 +169,7 @@ public class MVStore { ...@@ -169,7 +169,7 @@ public class MVStore {
* is the unsaved version, the value is the map of chunks. The maps contains * is the unsaved version, the value is the map of chunks. The maps contains
* the number of freed entries per chunk. Access is synchronized. * the number of freed entries per chunk. Access is synchronized.
*/ */
private final ConcurrentHashMap<Long, HashMap<Integer, Chunk>> freedPageSpace = private final ConcurrentHashMap<Long, HashMap<Integer, Chunk>> freedPageSpace =
new ConcurrentHashMap<Long, HashMap<Integer, Chunk>>(); new ConcurrentHashMap<Long, HashMap<Integer, Chunk>>();
/** /**
......
...@@ -7,6 +7,7 @@ ...@@ -7,6 +7,7 @@
CREATE TABLE VERSION(ID INT PRIMARY KEY, VERSION VARCHAR, CREATED VARCHAR); CREATE TABLE VERSION(ID INT PRIMARY KEY, VERSION VARCHAR, CREATED VARCHAR);
INSERT INTO VERSION VALUES INSERT INTO VERSION VALUES
(124, '1.3.174', '2013-10-19'),
(123, '1.3.173', '2013-07-28'), (123, '1.3.173', '2013-07-28'),
(122, '1.3.172', '2013-05-25'), (122, '1.3.172', '2013-05-25'),
(121, '1.3.171', '2013-03-17'), (121, '1.3.171', '2013-03-17'),
...@@ -18,8 +19,6 @@ INSERT INTO VERSION VALUES ...@@ -18,8 +19,6 @@ INSERT INTO VERSION VALUES
(115, '1.3.165', '2012-03-18'), (115, '1.3.165', '2012-03-18'),
(114, '1.3.164', '2012-01-03'), (114, '1.3.164', '2012-01-03'),
(113, '1.3.163', '2011-12-30'), (113, '1.3.163', '2011-12-30'),
(112, '1.3.162', '2011-11-26'),
(111, '1.3.161', '2011-10-28'),
; ;
CREATE TABLE CHANNEL(TITLE VARCHAR, LINK VARCHAR, DESC VARCHAR, CREATE TABLE CHANNEL(TITLE VARCHAR, LINK VARCHAR, DESC VARCHAR,
......
...@@ -52,7 +52,7 @@ public class TestConcurrent extends TestMVStore { ...@@ -52,7 +52,7 @@ public class TestConcurrent extends TestMVStore {
testConcurrentWrite(); testConcurrentWrite();
testConcurrentRead(); testConcurrentRead();
} }
private void testConcurrentStoreAndRemoveMap() throws InterruptedException { private void testConcurrentStoreAndRemoveMap() throws InterruptedException {
String fileName = getBaseDir() + "/testConcurrentStoreAndRemoveMap.h3"; String fileName = getBaseDir() + "/testConcurrentStoreAndRemoveMap.h3";
final MVStore s = openStore(fileName); final MVStore s = openStore(fileName);
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论