Skip to content
项目
群组
代码片段
帮助
正在加载...
帮助
为 GitLab 提交贡献
登录/注册
切换导航
H
h2database
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分枝图
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
计划
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
分枝图
统计图
创建新议题
作业
提交
议题看板
打开侧边栏
Administrator
h2database
Commits
9dc3d8ec
提交
9dc3d8ec
authored
7月 13, 2012
作者:
Thomas Mueller
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Prepare release.
上级
69097413
全部展开
隐藏空白字符变更
内嵌
并排
正在显示
7 个修改的文件
包含
553 行增加
和
1117 行删除
+553
-1117
changelog.html
h2/src/docsrc/html/changelog.html
+4
-127
_docs_en.utf8.txt
h2/src/docsrc/text/_docs_en.utf8.txt
+182
-371
_docs_ja.utf8.txt
h2/src/docsrc/text/_docs_ja.utf8.txt
+182
-371
_docs_en.properties
h2/src/docsrc/textbase/_docs_en.properties
+179
-242
Constants.java
h2/src/main/org/h2/engine/Constants.java
+4
-4
Database.java
h2/src/main/org/h2/engine/Database.java
+1
-1
newsfeed.sql
h2/src/test/org/h2/samples/newsfeed.sql
+1
-1
没有找到文件。
h2/src/docsrc/html/changelog.html
浏览文件 @
9dc3d8ec
...
...
@@ -18,9 +18,12 @@ Change Log
<h1>
Change Log
</h1>
<h2>
Next Version (unreleased)
</h2>
<ul><li>
-
</li></ul>
<h2>
Version 1.3.168 (2012-07-13)
</h2>
<ul><li>
The message "Transaction log could not be truncated" was sometimes written
to the .trace.db file even if there was no problem truncating the transaction log.
</li><li>
New system property "h2.serializeJavaObject" (default: true) that allows to disable
</li><li>
New system property "h2.serializeJavaObject" (default: true) that allows to disable
serializing Java objects, so that the objects compareTo and toString methods can be used.
</li><li>
Dylan has translated the H2 Console tool to Korean. Thanks a lot!
...
...
@@ -354,131 +357,5 @@ Change Log
timezones use different rules, if an old server or client is used.
</li></ul>
<h2>
Version 1.3.156 (2011-06-17)
</h2>
<ul><li>
Issue 323: NullPointerException when using IN(...) with a function table.
</li><li>
Clob.toString() and Blob.toString() now include the trace identifier.
</li><li>
The SQL parser silently ignored characters such as '^' or '\'.
Now a syntax error is thrown.
</li><li>
ROUND(..) now also works with just one parameter.
</li><li>
Access to system tables is now more restrictive for non-admin users
(the tables can be still listed, but some of the data is not included).
</li><li>
BLOB: InputStream.skip is now more efficient in embedded mode.
</li><li>
The default expression of a column may no longer reference the table,
because a database with such a table couldn't be opened normally.
</li><li>
Referenced objects in check constraints could be dropped, which resulted
in a database that can't be opened normally.
</li><li>
Improved Oracle compatibility for NVL2. Thanks again to litailang for the patch.
</li><li>
CSVREAD now supports the option 'preserveWhitespace'.
</li><li>
Recursive queries with many rows could throw an IndexOutOfBoundsException.
</li><li>
The auto-server mode can't be combined with an in-memory database.
This invalid combination wasn't detected so far.
Now trying to open a database in this way fails.
</li><li>
Improved performance for reading and writing date and time values.
</li><li>
Java functions: array component types are now preserved, so that a ResultSet.getObject()
will return Integer[] if the Java functions returns Integer[]. Thanks to Noel Grandin for the patch.
Component types are transferred over the network, but not persisted in the database file as of now.
</li><li>
Recover tool: the script generated by the recover tool didn't work
if fulltext search was used, because the triggers were created before the primary keys.
</li><li>
Issue 321: the database does not expect XA rollback without XA prepare
(an exception was unnecessarily written into the .trace.db file).
</li><li>
Read-only databases: some queries (such as distinct queries)
tried to create temporary tables, which failed for read only databases.
</li><li>
This database no longer uses finalize() except for temporary files.
The system property "h2.runFinalize" is no longer supported.
Unclosed connections are still detected, but the opening stack trace is now collected
only if connections are not closed repeatedly (starting with the second unclosed connection).
To detect unclosed connections, a PhantomReference is used.
</li><li>
Issue 322: Left joins didn't work when used as subquery in the form clause.
</li><li>
A prepared statement if type CALL that returned a result set could
throw a NullPointerException if executed multiple times.
</li><li>
The following built-in functions were marked as deterministic and therefore
not re-executed when using in a prepared statement:
LOCK_TIMEOUT, LINK_SCHEMA, CANCEL_SESSION, FILE_READ.
</li><li>
Count on a column that can not be null is now optimized to COUNT(*).
Thanks a lot to Ross Judson for providing a patch and test case!
</li><li>
The following prepared statements are now cached as well:
insert, update, delete, call, merge, and transactional commands.
</li><li>
The built-in connection pool is now a bit faster.
</li><li>
The scale was not set correctly in some cases when using
CREATE TABLE AS SELECT if there was no explicit column definition.
</li><li>
When trying to connect to a server using TCP/IP failed, it will retry at most
until the timeout. Before, it was the timeout multiplied with the retry count.
</li></ul>
<h2>
Version 1.3.155 (2011-05-27)
</h2>
<ul><li>
When altering a table with triggers, new triggers are created
and initialized with a table name that ends with tableName_COPY_x_y.
The plan is that this will not be required in future versions.
</li><li>
If some of the file system operations failed, System.gc() was called in a loop.
Now it is called once at most.
</li><li>
Triggers (including the fulltext search) could throw the exception
'Unexpected code path' in Session.log.
</li><li>
CURRENT_TIMESTAMP() and so on now return the same value within a transaction.
</li><li>
The statement CALL no longer converts an ARRAY return value to a list of values.
Now an ARRAY is returned.
</li><li>
VALUES is now supported as a standalone command and as a table source:
SELECT * FROM (VALUES(1, 'Hello'), (2, 'World')) AS V;
</li><li>
TIMESTAMPADD is now an alias for DATEADD.
Most SQL_TSI_ constants are now supported for for TIMESTAMPADD and TIMESTAMPDIFF
(all except SQL_TSI_QUARTER and SQL_TSI_FRAC_SECOND).
</li><li>
Issue 313: NullPointerException in select query with a subquery or view.
</li><li>
Native fulltext search: the characters '
<
', '
>
', and '\' are now also whitespace
characters. Also, the list of whitespace characters can be changed using
FullText.setWhitespaceChars(conn, ...)
</li><li>
When reading from the classpath (for example read_file('classpath:logo.png')),
now the content class loader is used if the resource can't be found otherwise.
</li><li>
The statement "script drop" create a script that couldn't be executed if
a table contained a reference to a user defined function.
</li><li>
Opening a database with both multi-threaded mode and lock mode 0 (disable locking)
was possible (but only once), even thought it does not work properly.
Now it is no longer allowed.
</li><li>
LOB objects are now deleted (and the empty space is reused) when the transaction is committed.
So far, the space wasn't re-used until the connection was closed.
</li><li>
SCRIPT DROP did not use the cascade option for table, which would cause problems
if a view was dropped before a table it depends on.
Now the cascade option is used.
</li><li>
The query plan of queries with subqueries that contain nested joins was wrong.
This could result in syntax exceptions for correct queries. Example:
select 1 from (select 2 from ((test t1 inner join test t2 on t1.id=t2.id) inner join test t3 on t3.id=t1.id)) x;
</li><li>
DatabaseEventListener.init was called with a null url when using the server mode.
</li><li>
Support for the function LN (an alias for LOG).
</li><li>
Support for the function CEIL (an alias for CEILING).
</li><li>
Issue 315: Access to LOBs could cause a Java level deadlock.
</li><li>
Support for the ICU4J collator.
</li><li>
Improved Oracle compatibility: support for NVL2. Thanks to litailang for the patch!
</li><li>
Improved PostgreSQL compatibility: support for RANDOM() in addition to RAND().
</li><li>
There was a classloader memory leak problem because a class contained a static
references to an exception (including stack trace).
</li><li>
Split file system: truncating a file now deletes the parts in reverse order,
so that the file list is consistent if the process is interrupted while truncating.
</li><li>
The H2 JDBC client can now be used in an unsigned Applet.
The problem was that System.getProperty throws a SecurityException, which is now ignored.
</li><li>
The condition "in(select ...)" did not work correctly if the subquery
could not be converted to a "distinct" query, as in:
"select * from dual where x in (select x from dual group by x order by max(x))".
Now the subquery needs to be made distinct manually if this optimization is needed.
</li><li>
In the last release, the error code for "Wrong user name or password" was still
08004 instead of 28000, which resulted in the wrong error message.
</li><li>
In some cases, creating a new table or altering an existing table threw the exception:
Unique index or primary key violation: "PRIMARY KEY ON """".PAGE_INDEX".
</li><li>
The Shell tool no longer supports the built-in command "show",
because it is a legal SQL statement for H2 and MySQL.
However, the "describe" command is still supported, and now lists all tables
if called without parameter.
</li><li>
The sorted insert mode (as in "insert into ... direct sorted select")
did not work for not-persisted tables in a persisted database.
It threw a ClassCastException.
</li><li>
Issue 308: Statement.getGeneratedKeys() now returns an empty result set if no key was generated.
</li><li>
The h2small.jar (created with build jarSmall) included the Android API.
This has been removed, shrinking the jar file by 21 KB.
</li><li>
When creating a table, the precision must now be at least as large as the scale.
</li><li>
Support for Java 1.3 and Java 1.4 has been removed.
</li><li>
Improved error message for syntax error: the list of expected tokens was sometimes not set correctly.
</li><li>
Database file growth can now be limited using the database setting PAGE_STORE_MAX_GROWTH.
Slower growth may slow down operation, but speed up closing database.
</li><li>
A read only database with writable linked tables could lead to a DATABASE_IS_READ_ONLY (90097) error.
This is fixed now.
</li></ul>
<!-- [close] { -->
</div></td></tr></table>
<!-- } --><!-- analytics -->
</body></html>
h2/src/docsrc/text/_docs_en.utf8.txt
浏览文件 @
9dc3d8ec
差异被折叠。
点击展开。
h2/src/docsrc/text/_docs_ja.utf8.txt
浏览文件 @
9dc3d8ec
差异被折叠。
点击展开。
h2/src/docsrc/textbase/_docs_en.properties
浏览文件 @
9dc3d8ec
差异被折叠。
点击展开。
h2/src/main/org/h2/engine/Constants.java
浏览文件 @
9dc3d8ec
...
...
@@ -16,22 +16,22 @@ public class Constants {
/**
* The build date is updated for each public release.
*/
public
static
final
String
BUILD_DATE
=
"2012-0
5-2
3"
;
public
static
final
String
BUILD_DATE
=
"2012-0
7-1
3"
;
/**
* The build date is updated for each public release.
*/
public
static
final
String
BUILD_DATE_STABLE
=
"2012-0
4-08
"
;
public
static
final
String
BUILD_DATE_STABLE
=
"2012-0
5-23
"
;
/**
* The build id is incremented for each public release.
*/
public
static
final
int
BUILD_ID
=
16
7
;
public
static
final
int
BUILD_ID
=
16
8
;
/**
* The build id of the last stable release.
*/
public
static
final
int
BUILD_ID_STABLE
=
16
6
;
public
static
final
int
BUILD_ID_STABLE
=
16
7
;
/**
* If H2 is compiled to be included in a product, this should be set to
...
...
h2/src/main/org/h2/engine/Database.java
浏览文件 @
9dc3d8ec
...
...
@@ -655,7 +655,7 @@ public class Database implements DataHandler {
}
getLobStorage
().
init
();
systemSession
.
commit
(
true
);
trace
.
info
(
"opened {0}"
,
databaseName
);
if
(
checkpointAllowed
>
0
)
{
afterWriting
();
...
...
h2/src/test/org/h2/samples/newsfeed.sql
浏览文件 @
9dc3d8ec
...
...
@@ -7,6 +7,7 @@
CREATE
TABLE
VERSION
(
ID
INT
PRIMARY
KEY
,
VERSION
VARCHAR
,
CREATED
VARCHAR
);
INSERT
INTO
VERSION
VALUES
(
118
,
'1.3.168'
,
'2012-07-13'
),
(
117
,
'1.3.167'
,
'2012-05-23'
),
(
116
,
'1.3.166'
,
'2012-04-08'
),
(
115
,
'1.3.165'
,
'2012-03-18'
),
...
...
@@ -20,7 +21,6 @@ INSERT INTO VERSION VALUES
(
107
,
'1.3.157'
,
'2011-06-25'
),
(
106
,
'1.3.156'
,
'2011-06-17'
),
(
105
,
'1.3.155'
,
'2011-05-27'
),
(
104
,
'1.3.154'
,
'2011-04-04'
)
;
CREATE
TABLE
CHANNEL
(
TITLE
VARCHAR
,
LINK
VARCHAR
,
DESC
VARCHAR
,
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论