Skip to content
项目
群组
代码片段
帮助
正在加载...
帮助
为 GitLab 提交贡献
登录/注册
切换导航
H
h2database
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分枝图
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
计划
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
分枝图
统计图
创建新议题
作业
提交
议题看板
打开侧边栏
Administrator
h2database
Commits
6fad76b1
提交
6fad76b1
authored
17 年前
作者:
Thomas Mueller
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
--no commit message
--no commit message
上级
bfe7a536
master
noel-pr1
plus33-master
pr/267
stumc-Issue#576
version-1.1.x
version-1.4.198
version-1.4.197
version-1.4.196
version-1.4.195
version-1.4.194
version-1.4.193
version-1.4.192
version-1.4.191
version-1.4.190
version-1.4.188
version-1.4.187
version-1.4.186
version-1.4.185
version-1.4.184
version-1.4.183
version-1.4.182
version-1.4.181
version-1.4.178
version-1.4.177
version-1.3
version-1.2
version-1.1
version-1.0
无相关合并请求
全部展开
隐藏空白字符变更
内嵌
并排
正在显示
26 个修改的文件
包含
305 行增加
和
22 行删除
+305
-22
ConstraintCheck.java
h2/src/main/org/h2/constraint/ConstraintCheck.java
+2
-1
ConstraintReferential.java
h2/src/main/org/h2/constraint/ConstraintReferential.java
+1
-0
ConstraintUnique.java
h2/src/main/org/h2/constraint/ConstraintUnique.java
+1
-0
Comment.java
h2/src/main/org/h2/engine/Comment.java
+1
-0
Database.java
h2/src/main/org/h2/engine/Database.java
+1
-1
FunctionAlias.java
h2/src/main/org/h2/engine/FunctionAlias.java
+1
-0
Right.java
h2/src/main/org/h2/engine/Right.java
+1
-0
Role.java
h2/src/main/org/h2/engine/Role.java
+1
-0
Setting.java
h2/src/main/org/h2/engine/Setting.java
+2
-1
User.java
h2/src/main/org/h2/engine/User.java
+1
-0
UserAggregate.java
h2/src/main/org/h2/engine/UserAggregate.java
+1
-0
UserDataType.java
h2/src/main/org/h2/engine/UserDataType.java
+1
-0
BaseIndex.java
h2/src/main/org/h2/index/BaseIndex.java
+1
-0
Constant.java
h2/src/main/org/h2/schema/Constant.java
+1
-0
Schema.java
h2/src/main/org/h2/schema/Schema.java
+1
-0
Sequence.java
h2/src/main/org/h2/schema/Sequence.java
+2
-1
TriggerObject.java
h2/src/main/org/h2/schema/TriggerObject.java
+2
-1
FileSystemDisk.java
h2/src/main/org/h2/store/fs/FileSystemDisk.java
+1
-1
Table.java
h2/src/main/org/h2/table/Table.java
+9
-7
TableData.java
h2/src/main/org/h2/table/TableData.java
+2
-1
TableLink.java
h2/src/main/org/h2/table/TableLink.java
+1
-0
TableView.java
h2/src/main/org/h2/table/TableView.java
+1
-0
TestAll.java
h2/src/test/org/h2/test/TestAll.java
+5
-3
TestBase.java
h2/src/test/org/h2/test/TestBase.java
+1
-1
TestKillRestart.java
h2/src/test/org/h2/test/synth/TestKillRestart.java
+3
-4
TestKillRestartMulti.java
h2/src/test/org/h2/test/synth/TestKillRestartMulti.java
+261
-0
没有找到文件。
h2/src/main/org/h2/constraint/ConstraintCheck.java
浏览文件 @
6fad76b1
...
...
@@ -75,8 +75,9 @@ public class ConstraintCheck extends Constraint {
return
getCreateSQLForCopy
(
table
,
getSQL
());
}
public
void
removeChildrenAndResources
(
Session
session
)
{
public
void
removeChildrenAndResources
(
Session
session
)
throws
SQLException
{
table
.
removeConstraint
(
this
);
database
.
removeMeta
(
session
,
getId
());
filter
=
null
;
expr
=
null
;
table
=
null
;
...
...
This diff is collapsed.
Click to expand it.
h2/src/main/org/h2/constraint/ConstraintReferential.java
浏览文件 @
6fad76b1
...
...
@@ -207,6 +207,7 @@ public class ConstraintReferential extends Constraint {
if
(
refIndexOwner
)
{
refTable
.
removeIndexOrTransferOwnership
(
session
,
refIndex
);
}
database
.
removeMeta
(
session
,
getId
());
refTable
=
null
;
index
=
null
;
refIndex
=
null
;
...
...
This diff is collapsed.
Click to expand it.
h2/src/main/org/h2/constraint/ConstraintUnique.java
浏览文件 @
6fad76b1
...
...
@@ -116,6 +116,7 @@ public class ConstraintUnique extends Constraint {
if
(
indexOwner
)
{
table
.
removeIndexOrTransferOwnership
(
session
,
index
);
}
database
.
removeMeta
(
session
,
getId
());
index
=
null
;
columns
=
null
;
table
=
null
;
...
...
This diff is collapsed.
Click to expand it.
h2/src/main/org/h2/engine/Comment.java
浏览文件 @
6fad76b1
...
...
@@ -84,6 +84,7 @@ public class Comment extends DbObjectBase {
}
public
void
removeChildrenAndResources
(
Session
session
)
throws
SQLException
{
database
.
removeMeta
(
session
,
getId
());
}
public
void
checkRename
()
throws
SQLException
{
...
...
This diff is collapsed.
Click to expand it.
h2/src/main/org/h2/engine/Database.java
浏览文件 @
6fad76b1
...
...
@@ -673,7 +673,7 @@ public class Database implements DataHandler {
}
}
p
rivate
synchronized
void
removeMeta
(
Session
session
,
int
id
)
throws
SQLException
{
p
ublic
synchronized
void
removeMeta
(
Session
session
,
int
id
)
throws
SQLException
{
SearchRow
r
=
meta
.
getTemplateSimpleRow
(
false
);
r
.
setValue
(
0
,
ValueInt
.
get
(
id
));
Cursor
cursor
=
metaIdIndex
.
find
(
session
,
r
,
r
);
...
...
This diff is collapsed.
Click to expand it.
h2/src/main/org/h2/engine/FunctionAlias.java
浏览文件 @
6fad76b1
...
...
@@ -138,6 +138,7 @@ public class FunctionAlias extends DbObjectBase {
}
public
synchronized
void
removeChildrenAndResources
(
Session
session
)
throws
SQLException
{
database
.
removeMeta
(
session
,
getId
());
className
=
methodName
=
null
;
javaMethod
=
null
;
invalidate
();
...
...
This diff is collapsed.
Click to expand it.
h2/src/main/org/h2/engine/Right.java
浏览文件 @
6fad76b1
...
...
@@ -106,6 +106,7 @@ public class Right extends DbObjectBase {
}
else
{
grantee
.
revokeRole
(
session
,
grantedRole
);
}
database
.
removeMeta
(
session
,
getId
());
grantedRole
=
null
;
grantedTable
=
null
;
grantee
=
null
;
...
...
This diff is collapsed.
Click to expand it.
h2/src/main/org/h2/engine/Role.java
浏览文件 @
6fad76b1
...
...
@@ -66,6 +66,7 @@ public class Role extends RightOwner {
database
.
removeDatabaseObject
(
session
,
right
);
}
}
database
.
removeMeta
(
session
,
getId
());
invalidate
();
}
...
...
This diff is collapsed.
Click to expand it.
h2/src/main/org/h2/engine/Setting.java
浏览文件 @
6fad76b1
...
...
@@ -63,7 +63,8 @@ public class Setting extends DbObjectBase {
return
DbObject
.
SETTING
;
}
public
void
removeChildrenAndResources
(
Session
session
)
{
public
void
removeChildrenAndResources
(
Session
session
)
throws
SQLException
{
database
.
removeMeta
(
session
,
getId
());
invalidate
();
}
...
...
This diff is collapsed.
Click to expand it.
h2/src/main/org/h2/engine/User.java
浏览文件 @
6fad76b1
...
...
@@ -172,6 +172,7 @@ public class User extends RightOwner {
database
.
removeDatabaseObject
(
session
,
right
);
}
}
database
.
removeMeta
(
session
,
getId
());
salt
=
null
;
ByteUtils
.
clear
(
passwordHash
);
passwordHash
=
null
;
...
...
This diff is collapsed.
Click to expand it.
h2/src/main/org/h2/engine/UserAggregate.java
浏览文件 @
6fad76b1
...
...
@@ -64,6 +64,7 @@ public class UserAggregate extends DbObjectBase {
}
public
synchronized
void
removeChildrenAndResources
(
Session
session
)
throws
SQLException
{
database
.
removeMeta
(
session
,
getId
());
className
=
null
;
javaClass
=
null
;
invalidate
();
...
...
This diff is collapsed.
Click to expand it.
h2/src/main/org/h2/engine/UserDataType.java
浏览文件 @
6fad76b1
...
...
@@ -48,6 +48,7 @@ public class UserDataType extends DbObjectBase {
}
public
void
removeChildrenAndResources
(
Session
session
)
throws
SQLException
{
database
.
removeMeta
(
session
,
getId
());
}
public
void
checkRename
()
throws
SQLException
{
...
...
This diff is collapsed.
Click to expand it.
h2/src/main/org/h2/index/BaseIndex.java
浏览文件 @
6fad76b1
...
...
@@ -151,6 +151,7 @@ public abstract class BaseIndex extends SchemaObjectBase implements Index {
public
void
removeChildrenAndResources
(
Session
session
)
throws
SQLException
{
table
.
removeIndex
(
this
);
remove
(
session
);
database
.
removeMeta
(
session
,
getId
());
}
public
boolean
canFindNext
()
{
...
...
This diff is collapsed.
Click to expand it.
h2/src/main/org/h2/schema/Constant.java
浏览文件 @
6fad76b1
...
...
@@ -49,6 +49,7 @@ public class Constant extends SchemaObjectBase {
}
public
void
removeChildrenAndResources
(
Session
session
)
throws
SQLException
{
database
.
removeMeta
(
session
,
getId
());
invalidate
();
}
...
...
This diff is collapsed.
Click to expand it.
h2/src/main/org/h2/schema/Schema.java
浏览文件 @
6fad76b1
...
...
@@ -107,6 +107,7 @@ public class Schema extends DbObjectBase {
Constant
obj
=
(
Constant
)
constants
.
values
().
toArray
()[
0
];
database
.
removeSchemaObject
(
session
,
obj
);
}
database
.
removeMeta
(
session
,
getId
());
owner
=
null
;
invalidate
();
}
...
...
This diff is collapsed.
Click to expand it.
h2/src/main/org/h2/schema/Sequence.java
浏览文件 @
6fad76b1
...
...
@@ -117,7 +117,8 @@ public class Sequence extends SchemaObjectBase {
return
DbObject
.
SEQUENCE
;
}
public
void
removeChildrenAndResources
(
Session
session
)
{
public
void
removeChildrenAndResources
(
Session
session
)
throws
SQLException
{
database
.
removeMeta
(
session
,
getId
());
invalidate
();
}
...
...
This diff is collapsed.
Click to expand it.
h2/src/main/org/h2/schema/TriggerObject.java
浏览文件 @
6fad76b1
...
...
@@ -236,8 +236,9 @@ public class TriggerObject extends SchemaObjectBase {
return
DbObject
.
TRIGGER
;
}
public
void
removeChildrenAndResources
(
Session
session
)
{
public
void
removeChildrenAndResources
(
Session
session
)
throws
SQLException
{
table
.
removeTrigger
(
session
,
this
);
database
.
removeMeta
(
session
,
getId
());
table
=
null
;
triggerClassName
=
null
;
triggerCallback
=
null
;
...
...
This diff is collapsed.
Click to expand it.
h2/src/main/org/h2/store/fs/FileSystemDisk.java
浏览文件 @
6fad76b1
...
...
@@ -54,7 +54,7 @@ public class FileSystemDisk extends FileSystem {
public
void
rename
(
String
oldName
,
String
newName
)
throws
SQLException
{
File
oldFile
=
new
File
(
oldName
);
File
newFile
=
new
File
(
newName
);
if
(
oldFile
.
get
Name
().
equals
(
newFile
.
getName
()))
{
if
(
oldFile
.
get
AbsolutePath
().
equals
(
newFile
.
getAbsolutePath
()))
{
throw
Message
.
getInternalError
(
"rename file old=new"
);
}
if
(!
oldFile
.
exists
())
{
...
...
This diff is collapsed.
Click to expand it.
h2/src/main/org/h2/table/Table.java
浏览文件 @
6fad76b1
...
...
@@ -332,13 +332,6 @@ public abstract class Table extends SchemaObjectBase {
constraints
.
remove
(
0
);
database
.
removeSchemaObject
(
session
,
constraint
);
}
while
(
sequences
!=
null
&&
sequences
.
size
()
>
0
)
{
Sequence
sequence
=
(
Sequence
)
sequences
.
get
(
0
);
sequences
.
remove
(
0
);
if
(!
getTemporary
())
{
database
.
removeSchemaObject
(
session
,
sequence
);
}
}
ObjectArray
rights
=
database
.
getAllRights
();
for
(
int
i
=
0
;
i
<
rights
.
size
();
i
++)
{
Right
right
=
(
Right
)
rights
.
get
(
i
);
...
...
@@ -346,6 +339,15 @@ public abstract class Table extends SchemaObjectBase {
database
.
removeDatabaseObject
(
session
,
right
);
}
}
database
.
removeMeta
(
session
,
getId
());
// must delete sequences later (in case there is a power failure before removing the table object)
while
(
sequences
!=
null
&&
sequences
.
size
()
>
0
)
{
Sequence
sequence
=
(
Sequence
)
sequences
.
get
(
0
);
sequences
.
remove
(
0
);
if
(!
getTemporary
())
{
database
.
removeSchemaObject
(
session
,
sequence
);
}
}
}
public
void
checkColumnIsNotReferenced
(
Column
col
)
throws
SQLException
{
...
...
This diff is collapsed.
Click to expand it.
h2/src/main/org/h2/table/TableData.java
浏览文件 @
6fad76b1
...
...
@@ -115,7 +115,7 @@ public class TableData extends Table implements RecordReader {
throw
Message
.
convert
(
e
);
}
}
private
void
checkRowCount
(
Session
session
,
Index
index
,
int
offset
)
{
if
(
SysProperties
.
CHECK
&&
!
database
.
isMultiVersion
())
{
long
rc
=
index
.
getRowCount
(
session
);
...
...
@@ -498,6 +498,7 @@ public class TableData extends Table implements RecordReader {
}
}
scanIndex
.
remove
(
session
);
database
.
removeMeta
(
session
,
getId
());
scanIndex
=
null
;
lockExclusive
=
null
;
lockShared
=
null
;
...
...
This diff is collapsed.
Click to expand it.
h2/src/main/org/h2/table/TableLink.java
浏览文件 @
6fad76b1
...
...
@@ -326,6 +326,7 @@ public class TableLink extends Table {
public
void
removeChildrenAndResources
(
Session
session
)
throws
SQLException
{
super
.
removeChildrenAndResources
(
session
);
close
(
session
);
database
.
removeMeta
(
session
,
getId
());
driver
=
null
;
url
=
user
=
password
=
originalTable
=
null
;
conn
=
null
;
...
...
This diff is collapsed.
Click to expand it.
h2/src/main/org/h2/table/TableView.java
浏览文件 @
6fad76b1
...
...
@@ -221,6 +221,7 @@ public class TableView extends Table {
public
void
removeChildrenAndResources
(
Session
session
)
throws
SQLException
{
removeViewFromTables
();
super
.
removeChildrenAndResources
(
session
);
database
.
removeMeta
(
session
,
getId
());
querySQL
=
null
;
index
=
null
;
invalidate
();
...
...
This diff is collapsed.
Click to expand it.
h2/src/test/org/h2/test/TestAll.java
浏览文件 @
6fad76b1
...
...
@@ -75,6 +75,7 @@ import org.h2.test.synth.TestHaltApp;
import
org.h2.test.synth.TestJoin
;
import
org.h2.test.synth.TestKill
;
import
org.h2.test.synth.TestKillRestart
;
import
org.h2.test.synth.TestKillRestartMulti
;
import
org.h2.test.synth.TestRandomSQL
;
import
org.h2.test.synth.TestTimer
;
import
org.h2.test.synth.sql.TestSynth
;
...
...
@@ -174,7 +175,7 @@ Adjust cache memory usage
Test Recovery with MAX_LOG_FILE_SIZE=1; test with various log file sizes
History:
CSV tool now support lineSeparator
Roadmap:
...
...
@@ -472,6 +473,7 @@ DROP TABLE MY_TEST;
new
TestCrashAPI
().
runTest
(
this
);
new
TestRandomSQL
().
runTest
(
this
);
new
TestKillRestart
().
runTest
(
this
);
new
TestKillRestartMulti
().
runTest
(
this
);
// unit
new
TestBitField
().
runTest
(
this
);
...
...
@@ -513,10 +515,10 @@ DROP TABLE MY_TEST;
test
.
runTest
(
this
);
}
catch
(
Exception
e
)
{
// ignore
TestBase
.
logError
(
"Class not found: "
+
className
,
null
);
TestBase
.
printlnWithTime
(
0
,
className
+
" class not found"
);
}
catch
(
NoClassDefFoundError
e
)
{
// ignore
TestBase
.
logError
(
"Class not found: "
+
className
,
null
);
TestBase
.
printlnWithTime
(
0
,
className
+
" class not found"
);
}
}
...
...
This diff is collapsed.
Click to expand it.
h2/src/test/org/h2/test/TestBase.java
浏览文件 @
6fad76b1
...
...
@@ -247,7 +247,7 @@ public abstract class TestBase {
printlnWithTime
(
time
,
getClass
().
getName
()
+
" "
+
s
);
}
private
static
void
printlnWithTime
(
long
time
,
String
s
)
{
static
void
printlnWithTime
(
long
time
,
String
s
)
{
String
t
=
"0000000000"
+
time
;
t
=
t
.
substring
(
t
.
length
()
-
6
);
System
.
out
.
println
(
t
+
" "
+
s
);
...
...
This diff is collapsed.
Click to expand it.
h2/src/test/org/h2/test/synth/TestKillRestart.java
浏览文件 @
6fad76b1
...
...
@@ -24,9 +24,9 @@ public class TestKillRestart extends TestBase {
if
(
config
.
networked
)
{
return
;
}
deleteDb
(
"
corrup
t"
);
String
url
=
getURL
(
"
corrup
t"
,
true
);
// String url = getURL("
corrup
t;CACHE_SIZE=2048;WRITE_DELAY=0;STORAGE=TEXT", true);
deleteDb
(
"
killRestar
t"
);
String
url
=
getURL
(
"
killRestar
t"
,
true
);
// String url = getURL("
killRestar
t;CACHE_SIZE=2048;WRITE_DELAY=0;STORAGE=TEXT", true);
String
user
=
getUser
(),
password
=
getPassword
();
String
[]
procDef
=
new
String
[]
{
"java"
,
"-cp"
,
"bin"
,
getClass
().
getName
(),
"-url"
,
url
,
"-user"
,
user
,
...
...
@@ -35,7 +35,6 @@ public class TestKillRestart extends TestBase {
int
len
=
getSize
(
2
,
15
);
for
(
int
i
=
0
;
i
<
len
;
i
++)
{
Process
p
=
Runtime
.
getRuntime
().
exec
(
procDef
);
// InputStream err = p.getErrorStream();
InputStream
in
=
p
.
getInputStream
();
OutputCatcher
catcher
=
new
OutputCatcher
(
in
);
catcher
.
start
();
...
...
This diff is collapsed.
Click to expand it.
h2/src/test/org/h2/test/synth/TestKillRestartMulti.java
0 → 100644
浏览文件 @
6fad76b1
差异被折叠。
点击展开。
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论