提交 4e1481c0 authored 作者: Thomas Mueller's avatar Thomas Mueller

Speed up tests.

上级 4d4450ec
...@@ -304,9 +304,6 @@ java org.h2.test.TestAll timer ...@@ -304,9 +304,6 @@ java org.h2.test.TestAll timer
// System.setProperty("h2.syncMethod", ""); // System.setProperty("h2.syncMethod", "");
/* /*
h2.selectForUpdateMvcc:
Implement (sum, count) and test (join, ...)
recovery tests with small freeList pages, page size 64 recovery tests with small freeList pages, page size 64
reopen org.h2.test.unit.TestPageStore reopen org.h2.test.unit.TestPageStore
......
...@@ -57,7 +57,9 @@ public class TestIndex extends TestBase { ...@@ -57,7 +57,9 @@ public class TestIndex extends TestBase {
testWideIndex(1200); testWideIndex(1200);
testWideIndex(2400); testWideIndex(2400);
if (config.big) { if (config.big) {
for (int i = 0; i < 2000; i++) { Random r = new Random();
for (int j = 0; j < 10; j++) {
int i = r.nextInt(3000);
if ((i % 100) == 0) { if ((i % 100) == 0) {
println("width: " + i); println("width: " + i);
} }
...@@ -148,15 +150,18 @@ public class TestIndex extends TestBase { ...@@ -148,15 +150,18 @@ public class TestIndex extends TestBase {
boolean reopen = !config.memory; boolean reopen = !config.memory;
Random rand = new Random(1); Random rand = new Random(1);
reconnect(); reconnect();
stat.execute("drop all objects");
stat.execute("CREATE TABLE TEST(ID identity)"); stat.execute("CREATE TABLE TEST(ID identity)");
int len = getSize(100, 1000); int len = getSize(100, 1000);
for (int i = 0; i < len; i++) { for (int i = 0; i < len; i++) {
switch (rand.nextInt(4)) { switch (rand.nextInt(4)) {
case 0: case 0:
if (reopen) { if (rand.nextInt(10) == 0) {
trace("reconnect"); if (reopen) {
reconnect(); trace("reconnect");
} reconnect();
}
}
break; break;
case 1: case 1:
trace("insert"); trace("insert");
...@@ -179,7 +184,7 @@ public class TestIndex extends TestBase { ...@@ -179,7 +184,7 @@ public class TestIndex extends TestBase {
reconnect(); reconnect();
stat.execute("create table testA(id int primary key, name varchar)"); stat.execute("create table testA(id int primary key, name varchar)");
stat.execute("create table testB(id int primary key hash, name varchar)"); stat.execute("create table testB(id int primary key hash, name varchar)");
int len = getSize(1000, 10000); int len = getSize(300, 3000);
stat.execute("insert into testA select x, 'Hello' from system_range(1, " + len + ")"); stat.execute("insert into testA select x, 'Hello' from system_range(1, " + len + ")");
stat.execute("insert into testB select x, 'Hello' from system_range(1, " + len + ")"); stat.execute("insert into testB select x, 'Hello' from system_range(1, " + len + ")");
Random rand = new Random(1); Random rand = new Random(1);
...@@ -269,6 +274,7 @@ public class TestIndex extends TestBase { ...@@ -269,6 +274,7 @@ public class TestIndex extends TestBase {
private void testWideIndex(int length) throws SQLException { private void testWideIndex(int length) throws SQLException {
reconnect(); reconnect();
stat.execute("drop all objects");
stat.execute("CREATE TABLE TEST(ID INT, NAME VARCHAR)"); stat.execute("CREATE TABLE TEST(ID INT, NAME VARCHAR)");
stat.execute("CREATE INDEX IDXNAME ON TEST(NAME)"); stat.execute("CREATE INDEX IDXNAME ON TEST(NAME)");
for (int i = 0; i < 100; i++) { for (int i = 0; i < 100; i++) {
...@@ -289,7 +295,7 @@ public class TestIndex extends TestBase { ...@@ -289,7 +295,7 @@ public class TestIndex extends TestBase {
assertEquals("" + id, name.trim()); assertEquals("" + id, name.trim());
} }
} }
stat.execute("DROP TABLE TEST"); stat.execute("drop all objects");
} }
private void testLike() throws SQLException { private void testLike() throws SQLException {
...@@ -315,7 +321,7 @@ public class TestIndex extends TestBase { ...@@ -315,7 +321,7 @@ public class TestIndex extends TestBase {
private void testLargeIndex() throws SQLException { private void testLargeIndex() throws SQLException {
random.setSeed(10); random.setSeed(10);
for (int i = 1; i < 100; i += getSize(1000, 3)) { for (int i = 1; i < 100; i += getSize(1000, 7)) {
stat.execute("DROP TABLE IF EXISTS TEST"); stat.execute("DROP TABLE IF EXISTS TEST");
stat.execute("CREATE TABLE TEST(NAME VARCHAR(" + i + "))"); stat.execute("CREATE TABLE TEST(NAME VARCHAR(" + i + "))");
stat.execute("CREATE INDEX IDXNAME ON TEST(NAME)"); stat.execute("CREATE INDEX IDXNAME ON TEST(NAME)");
......
...@@ -14,6 +14,7 @@ import java.util.ArrayList; ...@@ -14,6 +14,7 @@ import java.util.ArrayList;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.Random; import java.util.Random;
import org.h2.test.TestBase; import org.h2.test.TestBase;
import org.h2.test.db.Db; import org.h2.test.db.Db;
import org.h2.test.db.Db.Prepared; import org.h2.test.db.Db.Prepared;
...@@ -84,7 +85,7 @@ public class TestFuzzOptimizations extends TestBase { ...@@ -84,7 +85,7 @@ public class TestFuzzOptimizations extends TestBase {
String[] columns = new String[] { "a", "b", "c" }; String[] columns = new String[] { "a", "b", "c" };
String[] values = new String[] { null, "0", "0", "1", "2", "10", "a", "?" }; String[] values = new String[] { null, "0", "0", "1", "2", "10", "a", "?" };
String[] compares = new String[] { "in(", "not in(", "=", "=", ">", "<", ">=", "<=", "<>", "in(select", "not in(select" }; String[] compares = new String[] { "in(", "not in(", "=", "=", ">", "<", ">=", "<=", "<>", "in(select", "not in(select" };
int size = getSize(500, 5000); int size = getSize(100, 1000);
for (int i = 0; i < size; i++) { for (int i = 0; i < size; i++) {
long seed = seedGenerator.nextLong(); long seed = seedGenerator.nextLong();
println("seed: " + seed); println("seed: " + seed);
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论