Skip to content
项目
群组
代码片段
帮助
正在加载...
帮助
为 GitLab 提交贡献
登录/注册
切换导航
H
h2database
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分枝图
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
计划
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
分枝图
统计图
创建新议题
作业
提交
议题看板
打开侧边栏
Administrator
h2database
Commits
b424b429
提交
b424b429
authored
11 年前
作者:
noelgrandin
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Add a scalability test to compare scalability between the old engine and the new MVStore engine.
上级
a82dc556
隐藏空白字符变更
内嵌
并排
正在显示
5 个修改的文件
包含
256 行增加
和
26 行删除
+256
-26
BenchB.java
h2/src/test/org/h2/test/bench/BenchB.java
+14
-8
Database.java
h2/src/test/org/h2/test/bench/Database.java
+29
-14
TestPerformance.java
h2/src/test/org/h2/test/bench/TestPerformance.java
+7
-2
TestScalability.java
h2/src/test/org/h2/test/bench/TestScalability.java
+204
-0
test.properties
h2/src/test/org/h2/test/bench/test.properties
+2
-2
没有找到文件。
h2/src/test/org/h2/test/bench/BenchB.java
浏览文件 @
b424b429
...
@@ -25,8 +25,9 @@ public class BenchB implements Bench, Runnable {
...
@@ -25,8 +25,9 @@ public class BenchB implements Bench, Runnable {
private
static
final
int
BRANCHES
=
1
;
private
static
final
int
BRANCHES
=
1
;
private
static
final
int
TELLERS
=
10
;
private
static
final
int
TELLERS
=
10
;
private
static
final
int
ACCOUNTS
=
100000
;
private
static
final
int
ACCOUNTS
=
100000
;
private
static
final
int
CLIENTS
=
10
;
private
int
noThreads
=
10
;
// master data
// master data
private
Database
database
;
private
Database
database
;
private
int
transactionPerClient
;
private
int
transactionPerClient
;
...
@@ -151,11 +152,12 @@ public class BenchB implements Bench, Runnable {
...
@@ -151,11 +152,12 @@ public class BenchB implements Bench, Runnable {
// UPDATE ACCOUNTS SET ABALANCE=ABALANCE+? WHERE AID=?
// UPDATE ACCOUNTS SET ABALANCE=ABALANCE+? WHERE AID=?
updateAccount
.
setInt
(
1
,
delta
);
updateAccount
.
setInt
(
1
,
delta
);
updateAccount
.
setInt
(
2
,
account
);
updateAccount
.
setInt
(
2
,
account
);
master
.
database
.
update
(
updateAccount
,
"UpdateAccounts"
);
updateAccount
.
executeUpdate
();
updateAccount
.
executeUpdate
();
// SELECT ABALANCE FROM ACCOUNTS WHERE AID=?
// SELECT ABALANCE FROM ACCOUNTS WHERE AID=?
selectAccount
.
setInt
(
1
,
account
);
selectAccount
.
setInt
(
1
,
account
);
ResultSet
rs
=
selectAccount
.
executeQuery
(
);
ResultSet
rs
=
master
.
database
.
query
(
selectAccount
);
while
(
rs
.
next
())
{
while
(
rs
.
next
())
{
rs
.
getInt
(
1
);
rs
.
getInt
(
1
);
}
}
...
@@ -163,19 +165,19 @@ public class BenchB implements Bench, Runnable {
...
@@ -163,19 +165,19 @@ public class BenchB implements Bench, Runnable {
// UPDATE TELLERS SET TBALANCE=TABLANCE+? WHERE TID=?
// UPDATE TELLERS SET TBALANCE=TABLANCE+? WHERE TID=?
updateTeller
.
setInt
(
1
,
delta
);
updateTeller
.
setInt
(
1
,
delta
);
updateTeller
.
setInt
(
2
,
teller
);
updateTeller
.
setInt
(
2
,
teller
);
updateTeller
.
executeUpdate
(
);
master
.
database
.
update
(
updateTeller
,
"UpdateTeller"
);
// UPDATE BRANCHES SET BBALANCE=BBALANCE+? WHERE BID=?
// UPDATE BRANCHES SET BBALANCE=BBALANCE+? WHERE BID=?
updateBranch
.
setInt
(
1
,
delta
);
updateBranch
.
setInt
(
1
,
delta
);
updateBranch
.
setInt
(
2
,
branch
);
updateBranch
.
setInt
(
2
,
branch
);
updateBranch
.
executeUpdate
(
);
master
.
database
.
update
(
updateBranch
,
"UpdateBranch"
);
// INSERT INTO HISTORY(TID, BID, AID, DELTA) VALUES(?, ?, ?, ?)
// INSERT INTO HISTORY(TID, BID, AID, DELTA) VALUES(?, ?, ?, ?)
insertHistory
.
setInt
(
1
,
teller
);
insertHistory
.
setInt
(
1
,
teller
);
insertHistory
.
setInt
(
2
,
branch
);
insertHistory
.
setInt
(
2
,
branch
);
insertHistory
.
setInt
(
3
,
account
);
insertHistory
.
setInt
(
3
,
account
);
insertHistory
.
setInt
(
4
,
delta
);
insertHistory
.
setInt
(
4
,
delta
);
insertHistory
.
executeUpdate
(
);
master
.
database
.
update
(
insertHistory
,
"InsertHistory"
);
conn
.
commit
();
conn
.
commit
();
}
catch
(
SQLException
e
)
{
}
catch
(
SQLException
e
)
{
e
.
printStackTrace
();
e
.
printStackTrace
();
...
@@ -198,9 +200,9 @@ public class BenchB implements Bench, Runnable {
...
@@ -198,9 +200,9 @@ public class BenchB implements Bench, Runnable {
}
}
private
void
processTransactions
()
throws
Exception
{
private
void
processTransactions
()
throws
Exception
{
Thread
[]
threads
=
new
Thread
[
CLIENTS
];
Thread
[]
threads
=
new
Thread
[
noThreads
];
for
(
int
i
=
0
;
i
<
CLIENTS
;
i
++)
{
for
(
int
i
=
0
;
i
<
noThreads
;
i
++)
{
threads
[
i
]
=
new
Thread
(
new
BenchB
(
this
,
i
));
threads
[
i
]
=
new
Thread
(
new
BenchB
(
this
,
i
)
,
"BenchB-"
+
i
);
}
}
for
(
Thread
t
:
threads
)
{
for
(
Thread
t
:
threads
)
{
t
.
start
();
t
.
start
();
...
@@ -214,4 +216,8 @@ public class BenchB implements Bench, Runnable {
...
@@ -214,4 +216,8 @@ public class BenchB implements Bench, Runnable {
public
String
getName
()
{
public
String
getName
()
{
return
"BenchB"
;
return
"BenchB"
;
}
}
public
void
setNoThreads
(
int
noThreads
)
{
this
.
noThreads
=
noThreads
;
}
}
}
This diff is collapsed.
Click to expand it.
h2/src/test/org/h2/test/bench/Database.java
浏览文件 @
b424b429
...
@@ -19,7 +19,7 @@ import java.util.ArrayList;
...
@@ -19,7 +19,7 @@ import java.util.ArrayList;
import
java.util.Properties
;
import
java.util.Properties
;
import
java.util.Random
;
import
java.util.Random
;
import
java.util.StringTokenizer
;
import
java.util.StringTokenizer
;
import
java.util.concurrent.atomic.AtomicInteger
;
import
org.h2.test.TestBase
;
import
org.h2.test.TestBase
;
import
org.h2.tools.Server
;
import
org.h2.tools.Server
;
import
org.h2.util.JdbcUtils
;
import
org.h2.util.JdbcUtils
;
...
@@ -30,9 +30,13 @@ import org.h2.util.StringUtils;
...
@@ -30,9 +30,13 @@ import org.h2.util.StringUtils;
*/
*/
class
Database
{
class
Database
{
public
interface
DatabaseParentInterface
{
boolean
isCollect
();
void
trace
(
String
msg
);
}
private
static
final
boolean
TRACE
=
true
;
private
static
final
boolean
TRACE
=
true
;
private
TestPerforman
ce
test
;
private
DatabaseParentInterfa
ce
test
;
private
int
id
;
private
int
id
;
private
String
name
,
url
,
user
,
password
;
private
String
name
,
url
,
user
,
password
;
private
final
ArrayList
<
String
[]>
replace
=
new
ArrayList
<
String
[]>();
private
final
ArrayList
<
String
[]>
replace
=
new
ArrayList
<
String
[]>();
...
@@ -44,8 +48,9 @@ class Database {
...
@@ -44,8 +48,9 @@ class Database {
private
final
Random
random
=
new
Random
(
1
);
private
final
Random
random
=
new
Random
(
1
);
private
final
ArrayList
<
Object
[]>
results
=
new
ArrayList
<
Object
[]>();
private
final
ArrayList
<
Object
[]>
results
=
new
ArrayList
<
Object
[]>();
private
int
totalTime
;
private
int
totalTime
;
private
int
executedStatements
;
private
final
AtomicInteger
executedStatements
=
new
AtomicInteger
(
0
);
private
int
noThreads
;
private
Server
serverH2
;
private
Server
serverH2
;
private
Object
serverDerby
;
private
Object
serverDerby
;
private
boolean
serverHSQLDB
;
private
boolean
serverHSQLDB
;
...
@@ -150,7 +155,7 @@ class Database {
...
@@ -150,7 +155,7 @@ class Database {
* @param dbString the configuration string
* @param dbString the configuration string
* @return a new database object with the given settings
* @return a new database object with the given settings
*/
*/
static
Database
parse
(
TestPerforman
ce
test
,
int
id
,
String
dbString
)
{
static
Database
parse
(
DatabaseParentInterfa
ce
test
,
int
id
,
String
dbString
)
{
try
{
try
{
StringTokenizer
tokenizer
=
new
StringTokenizer
(
dbString
,
","
);
StringTokenizer
tokenizer
=
new
StringTokenizer
(
dbString
,
","
);
Database
db
=
new
Database
();
Database
db
=
new
Database
();
...
@@ -172,6 +177,12 @@ class Database {
...
@@ -172,6 +177,12 @@ class Database {
}
}
}
}
static
Database
parse
(
DatabaseParentInterface
test
,
int
id
,
String
dbString
,
int
noThreads
)
{
Database
db
=
parse
(
test
,
id
,
dbString
);
db
.
noThreads
=
noThreads
;
return
db
;
}
/**
/**
* Open a new database connection. This connection must be closed
* Open a new database connection. This connection must be closed
* by calling conn.close().
* by calling conn.close().
...
@@ -285,7 +296,7 @@ class Database {
...
@@ -285,7 +296,7 @@ class Database {
void
end
()
{
void
end
()
{
long
time
=
System
.
currentTimeMillis
()
-
startTime
;
long
time
=
System
.
currentTimeMillis
()
-
startTime
;
log
(
currentAction
,
"ms"
,
(
int
)
time
);
log
(
currentAction
,
"ms"
,
(
int
)
time
);
if
(
test
.
collect
)
{
if
(
test
.
isCollect
()
)
{
totalTime
+=
time
;
totalTime
+=
time
;
}
}
}
}
...
@@ -312,8 +323,8 @@ class Database {
...
@@ -312,8 +323,8 @@ class Database {
void
update
(
PreparedStatement
prep
,
String
traceMessage
)
throws
SQLException
{
void
update
(
PreparedStatement
prep
,
String
traceMessage
)
throws
SQLException
{
test
.
trace
(
traceMessage
);
test
.
trace
(
traceMessage
);
prep
.
executeUpdate
();
prep
.
executeUpdate
();
if
(
test
.
collect
)
{
if
(
test
.
isCollect
()
)
{
executedStatements
++
;
executedStatements
.
incrementAndGet
()
;
}
}
}
}
...
@@ -325,8 +336,8 @@ class Database {
...
@@ -325,8 +336,8 @@ class Database {
void
update
(
String
sql
)
throws
SQLException
{
void
update
(
String
sql
)
throws
SQLException
{
sql
=
getSQL
(
sql
);
sql
=
getSQL
(
sql
);
if
(
sql
.
trim
().
length
()
>
0
)
{
if
(
sql
.
trim
().
length
()
>
0
)
{
if
(
test
.
collect
)
{
if
(
test
.
isCollect
()
)
{
executedStatements
++
;
executedStatements
.
incrementAndGet
()
;
}
}
stat
.
execute
(
sql
);
stat
.
execute
(
sql
);
}
else
{
}
else
{
...
@@ -395,7 +406,7 @@ class Database {
...
@@ -395,7 +406,7 @@ class Database {
* @param value the value
* @param value the value
*/
*/
void
log
(
String
action
,
String
scale
,
int
value
)
{
void
log
(
String
action
,
String
scale
,
int
value
)
{
if
(
test
.
collect
)
{
if
(
test
.
isCollect
()
)
{
results
.
add
(
new
Object
[]
{
action
,
scale
,
Integer
.
valueOf
(
value
)
});
results
.
add
(
new
Object
[]
{
action
,
scale
,
Integer
.
valueOf
(
value
)
});
}
}
}
}
...
@@ -413,8 +424,8 @@ class Database {
...
@@ -413,8 +424,8 @@ class Database {
// if(time > 100) {
// if(time > 100) {
// System.out.println("time="+time);
// System.out.println("time="+time);
// }
// }
if
(
test
.
collect
)
{
if
(
test
.
isCollect
()
)
{
executedStatements
++
;
executedStatements
.
incrementAndGet
()
;
}
}
return
rs
;
return
rs
;
}
}
...
@@ -441,7 +452,7 @@ class Database {
...
@@ -441,7 +452,7 @@ class Database {
* @return the number of statements
* @return the number of statements
*/
*/
int
getExecutedStatements
()
{
int
getExecutedStatements
()
{
return
executedStatements
;
return
executedStatements
.
get
()
;
}
}
/**
/**
...
@@ -452,5 +463,9 @@ class Database {
...
@@ -452,5 +463,9 @@ class Database {
int
getId
()
{
int
getId
()
{
return
id
;
return
id
;
}
}
int
getNoThreads
()
{
return
noThreads
;
}
}
}
This diff is collapsed.
Click to expand it.
h2/src/test/org/h2/test/bench/TestPerformance.java
浏览文件 @
b424b429
...
@@ -27,7 +27,7 @@ import org.h2.util.JdbcUtils;
...
@@ -27,7 +27,7 @@ import org.h2.util.JdbcUtils;
* The main controller class of the benchmark application.
* The main controller class of the benchmark application.
* To run the benchmark, call the main method of this class.
* To run the benchmark, call the main method of this class.
*/
*/
public
class
TestPerformance
{
public
class
TestPerformance
implements
Database
.
DatabaseParentInterface
{
/**
/**
* Whether data should be collected.
* Whether data should be collected.
...
@@ -253,10 +253,15 @@ public class TestPerformance {
...
@@ -253,10 +253,15 @@ public class TestPerformance {
*
*
* @param s the message
* @param s the message
*/
*/
void
trace
(
String
s
)
{
public
void
trace
(
String
s
)
{
if
(
trace
)
{
if
(
trace
)
{
System
.
out
.
println
(
s
);
System
.
out
.
println
(
s
);
}
}
}
}
@Override
public
boolean
isCollect
()
{
return
collect
;
}
}
}
This diff is collapsed.
Click to expand it.
h2/src/test/org/h2/test/bench/TestScalability.java
0 → 100644
浏览文件 @
b424b429
/*
* Copyright 2004-2013 H2 Group. Multiple-Licensed under the H2 License, Version
* 1.0, and under the Eclipse Public License, Version 1.0
* (http://h2database.com/html/license.html). Initial Developer: H2 Group
*/
package
org
.
h2
.
test
.
bench
;
import
java.io.FileWriter
;
import
java.io.PrintWriter
;
import
java.sql.Connection
;
import
java.sql.DatabaseMetaData
;
import
java.sql.DriverManager
;
import
java.sql.PreparedStatement
;
import
java.sql.ResultSet
;
import
java.sql.SQLException
;
import
java.sql.Statement
;
import
java.util.ArrayList
;
import
org.h2.store.fs.FileUtils
;
import
org.h2.test.TestBase
;
import
org.h2.util.IOUtils
;
import
org.h2.util.JdbcUtils
;
/**
* Used to compare scalability between the old engine and the new MVStore engine.
* Mostly it runs BenchB with various numbers of threads.
*/
public
class
TestScalability
implements
Database
.
DatabaseParentInterface
{
/**
* Whether data should be collected.
*/
boolean
collect
;
/**
* The flag used to enable or disable trace messages.
*/
boolean
trace
;
/**
* This method is called when executing this sample application.
*
* @param args the command line parameters
*/
public
static
void
main
(
String
...
args
)
throws
Exception
{
new
TestScalability
().
test
();
}
private
static
Connection
getResultConnection
()
throws
SQLException
{
org
.
h2
.
Driver
.
load
();
return
DriverManager
.
getConnection
(
"jdbc:h2:data/results"
);
}
private
static
void
openResults
()
throws
SQLException
{
Connection
conn
=
null
;
Statement
stat
=
null
;
try
{
conn
=
getResultConnection
();
stat
=
conn
.
createStatement
();
stat
.
execute
(
"CREATE TABLE IF NOT EXISTS RESULTS(TESTID INT, TEST VARCHAR, "
+
"UNIT VARCHAR, DBID INT, DB VARCHAR, RESULT VARCHAR)"
);
}
finally
{
JdbcUtils
.
closeSilently
(
stat
);
JdbcUtils
.
closeSilently
(
conn
);
}
}
private
void
test
()
throws
Exception
{
final
boolean
exit
=
false
;
FileUtils
.
deleteRecursive
(
"data"
,
true
);
final
String
out
=
"benchmark.html"
;
final
int
size
=
400
;
ArrayList
<
Database
>
dbs
=
new
ArrayList
<
Database
>();
int
id
=
1
;
final
String
h2Url
=
"jdbc:h2:data/test;LOCK_TIMEOUT=10000;LOCK_MODE=3"
;
dbs
.
add
(
createDbEntry
(
id
++,
"H2"
,
1
,
h2Url
));
dbs
.
add
(
createDbEntry
(
id
++,
"H2"
,
10
,
h2Url
));
dbs
.
add
(
createDbEntry
(
id
++,
"H2"
,
20
,
h2Url
));
dbs
.
add
(
createDbEntry
(
id
++,
"H2"
,
30
,
h2Url
));
dbs
.
add
(
createDbEntry
(
id
++,
"H2"
,
40
,
h2Url
));
dbs
.
add
(
createDbEntry
(
id
++,
"H2"
,
50
,
h2Url
));
dbs
.
add
(
createDbEntry
(
id
++,
"H2"
,
100
,
h2Url
));
final
String
mvUrl
=
"jdbc:h2:data/mvtest;LOCK_TIMEOUT=10000;DEFAULT_TABLE_ENGINE=org.h2.mvstore.db.MVTableEngine"
;
dbs
.
add
(
createDbEntry
(
id
++,
"MV"
,
1
,
mvUrl
));
dbs
.
add
(
createDbEntry
(
id
++,
"MV"
,
10
,
mvUrl
));
dbs
.
add
(
createDbEntry
(
id
++,
"MV"
,
20
,
mvUrl
));
dbs
.
add
(
createDbEntry
(
id
++,
"MV"
,
30
,
mvUrl
));
dbs
.
add
(
createDbEntry
(
id
++,
"MV"
,
40
,
mvUrl
));
dbs
.
add
(
createDbEntry
(
id
++,
"MV"
,
50
,
mvUrl
));
dbs
.
add
(
createDbEntry
(
id
++,
"MV"
,
100
,
mvUrl
));
final
BenchB
test
=
new
BenchB
();
testAll
(
dbs
,
test
,
size
);
collect
=
false
;
ArrayList
<
Object
[]>
results
=
dbs
.
get
(
0
).
getResults
();
Connection
conn
=
null
;
PreparedStatement
prep
=
null
;
Statement
stat
=
null
;
PrintWriter
writer
=
null
;
try
{
openResults
();
conn
=
getResultConnection
();
stat
=
conn
.
createStatement
();
prep
=
conn
.
prepareStatement
(
"INSERT INTO RESULTS(TESTID, TEST, UNIT, DBID, DB, RESULT) VALUES(?, ?, ?, ?, ?, ?)"
);
for
(
int
i
=
0
;
i
<
results
.
size
();
i
++)
{
Object
[]
res
=
results
.
get
(
i
);
prep
.
setInt
(
1
,
i
);
prep
.
setString
(
2
,
res
[
0
].
toString
());
prep
.
setString
(
3
,
res
[
1
].
toString
());
for
(
Database
db
:
dbs
)
{
prep
.
setInt
(
4
,
db
.
getId
());
prep
.
setString
(
5
,
db
.
getName
());
Object
[]
v
=
db
.
getResults
().
get
(
i
);
prep
.
setString
(
6
,
v
[
2
].
toString
());
prep
.
execute
();
}
}
writer
=
new
PrintWriter
(
new
FileWriter
(
out
));
ResultSet
rs
=
stat
.
executeQuery
(
"CALL '<table><tr><th>Test Case</th><th>Unit</th>' "
+
"|| SELECT GROUP_CONCAT('<th>' || DB || '</th>' ORDER BY DBID SEPARATOR '') FROM "
+
"(SELECT DISTINCT DBID, DB FROM RESULTS)"
+
"|| '</tr>' || CHAR(10) "
+
"|| SELECT GROUP_CONCAT('<tr><td>' || TEST || '</td><td>' || UNIT || '</td>' || ( "
+
"SELECT GROUP_CONCAT('<td>' || RESULT || '</td>' ORDER BY DBID SEPARATOR '') FROM RESULTS R2 WHERE "
+
"R2.TESTID = R1.TESTID) || '</tr>' ORDER BY TESTID SEPARATOR CHAR(10)) FROM "
+
"(SELECT DISTINCT TESTID, TEST, UNIT FROM RESULTS) R1"
+
"|| '</table>'"
);
rs
.
next
();
String
result
=
rs
.
getString
(
1
);
writer
.
println
(
result
);
}
finally
{
JdbcUtils
.
closeSilently
(
prep
);
JdbcUtils
.
closeSilently
(
stat
);
JdbcUtils
.
closeSilently
(
conn
);
IOUtils
.
closeSilently
(
writer
);
}
if
(
exit
)
{
System
.
exit
(
0
);
}
}
private
Database
createDbEntry
(
int
id
,
String
namePrefix
,
int
noThreads
,
String
url
)
{
Database
db
=
Database
.
parse
(
this
,
id
,
namePrefix
+
"("
+
noThreads
+
"thread), org.h2.Driver, "
+
url
+
", sa, sa"
,
noThreads
);
return
db
;
}
private
void
testAll
(
ArrayList
<
Database
>
dbs
,
BenchB
test
,
int
size
)
throws
Exception
{
for
(
int
i
=
0
;
i
<
dbs
.
size
();
i
++)
{
if
(
i
>
0
)
{
Thread
.
sleep
(
1000
);
}
// calls garbage collection
TestBase
.
getMemoryUsed
();
Database
db
=
dbs
.
get
(
i
);
System
.
out
.
println
(
"Testing the performance of "
+
db
.
getName
());
db
.
startServer
();
Connection
conn
=
db
.
openNewConnection
();
DatabaseMetaData
meta
=
conn
.
getMetaData
();
System
.
out
.
println
(
" "
+
meta
.
getDatabaseProductName
()
+
" "
+
meta
.
getDatabaseProductVersion
());
runDatabase
(
db
,
test
,
1
);
runDatabase
(
db
,
test
,
1
);
collect
=
true
;
runDatabase
(
db
,
test
,
size
);
conn
.
close
();
db
.
log
(
"Executed statements"
,
"#"
,
db
.
getExecutedStatements
());
db
.
log
(
"Total time"
,
"ms"
,
db
.
getTotalTime
());
int
statPerSec
=
db
.
getExecutedStatements
()
*
1000
/
db
.
getTotalTime
();
db
.
log
(
"Statements per second"
,
"#"
,
statPerSec
);
System
.
out
.
println
(
"Statements per second: "
+
statPerSec
);
collect
=
false
;
db
.
stopServer
();
}
}
private
static
void
runDatabase
(
Database
db
,
BenchB
bench
,
int
size
)
throws
Exception
{
bench
.
init
(
db
,
size
);
bench
.
setNoThreads
(
db
.
getNoThreads
());
bench
.
runTest
();
}
/**
* Print a message to system out if trace is enabled.
*
* @param s the message
*/
@Override
public
void
trace
(
String
s
)
{
if
(
trace
)
{
System
.
out
.
println
(
s
);
}
}
@Override
public
boolean
isCollect
()
{
return
collect
;
}
}
This diff is collapsed.
Click to expand it.
h2/src/test/org/h2/test/bench/test.properties
浏览文件 @
b424b429
db1
=
H2, org.h2.Driver, jdbc:h2:data/test;LOCK_TIMEOUT=10000;LOCK_MODE=3, sa, sa
db1
=
H2
(embedded)
, org.h2.Driver, jdbc:h2:data/test;LOCK_TIMEOUT=10000;LOCK_MODE=3, sa, sa
#xdb1 = H2, org.h2.Driver, jdbc:h2:data/test;LOCK_TIMEOUT=10000;LOCK_MODE=3;DEFAULT_TABLE_ENGINE=org.h2.mvstore.db.MVTableEngine, sa, sa
#xdb1 = H2, org.h2.Driver, jdbc:h2:data/test;LOCK_TIMEOUT=10000;LOCK_MODE=3;DEFAULT_TABLE_ENGINE=org.h2.mvstore.db.MVTableEngine, sa, sa
...
@@ -14,7 +14,7 @@ db1 = H2, org.h2.Driver, jdbc:h2:data/test;LOCK_TIMEOUT=10000;LOCK_MODE=3, sa, s
...
@@ -14,7 +14,7 @@ db1 = H2, org.h2.Driver, jdbc:h2:data/test;LOCK_TIMEOUT=10000;LOCK_MODE=3, sa, s
db2
=
HSQLDB, org.hsqldb.jdbcDriver, jdbc:hsqldb:data/test;hsqldb.default_table_type=cached;sql.enforce_size=true, sa
db2
=
HSQLDB, org.hsqldb.jdbcDriver, jdbc:hsqldb:data/test;hsqldb.default_table_type=cached;sql.enforce_size=true, sa
db3
=
Derby, org.apache.derby.jdbc.EmbeddedDriver, jdbc:derby:data/derby;create=true, sa, sa
db3
=
Derby, org.apache.derby.jdbc.EmbeddedDriver, jdbc:derby:data/derby;create=true, sa, sa
db4
=
H2, org.h2.Driver, jdbc:h2:tcp://localhost/data/testServer;LOCK_TIMEOUT=10000;LOCK_MODE=3, sa, sa
db4
=
H2
(tcpserver)
, org.h2.Driver, jdbc:h2:tcp://localhost/data/testServer;LOCK_TIMEOUT=10000;LOCK_MODE=3, sa, sa
db5
=
HSQLDB, org.hsqldb.jdbcDriver, jdbc:hsqldb:hsql://localhost/xdb, sa
db5
=
HSQLDB, org.hsqldb.jdbcDriver, jdbc:hsqldb:hsql://localhost/xdb, sa
db6
=
Derby, org.apache.derby.jdbc.ClientDriver, jdbc:derby://localhost/data/derbyServer;create=true, sa, sa
db6
=
Derby, org.apache.derby.jdbc.ClientDriver, jdbc:derby://localhost/data/derbyServer;create=true, sa, sa
db7
=
PostgreSQL, org.postgresql.Driver, jdbc:postgresql:test, sa, sa
db7
=
PostgreSQL, org.postgresql.Driver, jdbc:postgresql:test, sa, sa
...
...
This diff is collapsed.
Click to expand it.
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论