提交 3c6b2309 authored 作者: tledkov's avatar tledkov

#1057, #1072 fix review comments

上级 ca5a3593
......@@ -167,7 +167,69 @@ import org.h2.test.synth.TestStringAggCompatibility;
import org.h2.test.synth.TestTimer;
import org.h2.test.synth.sql.TestSynth;
import org.h2.test.synth.thread.TestMulti;
import org.h2.test.unit.*;
import org.h2.test.unit.TestAnsCompression;
import org.h2.test.unit.TestAutoReconnect;
import org.h2.test.unit.TestBinaryArithmeticStream;
import org.h2.test.unit.TestBitStream;
import org.h2.test.unit.TestBnf;
import org.h2.test.unit.TestCache;
import org.h2.test.unit.TestCharsetCollator;
import org.h2.test.unit.TestClearReferences;
import org.h2.test.unit.TestCollation;
import org.h2.test.unit.TestCompress;
import org.h2.test.unit.TestConnectionInfo;
import org.h2.test.unit.TestDataPage;
import org.h2.test.unit.TestDate;
import org.h2.test.unit.TestDateIso8601;
import org.h2.test.unit.TestDateTimeUtils;
import org.h2.test.unit.TestDbException;
import org.h2.test.unit.TestExit;
import org.h2.test.unit.TestFile;
import org.h2.test.unit.TestFileLock;
import org.h2.test.unit.TestFileLockProcess;
import org.h2.test.unit.TestFileLockSerialized;
import org.h2.test.unit.TestFileSystem;
import org.h2.test.unit.TestFtp;
import org.h2.test.unit.TestGeometryUtils;
import org.h2.test.unit.TestIntArray;
import org.h2.test.unit.TestIntIntHashMap;
import org.h2.test.unit.TestIntPerfectHash;
import org.h2.test.unit.TestInterval;
import org.h2.test.unit.TestJmx;
import org.h2.test.unit.TestLocalResultFactory;
import org.h2.test.unit.TestLocale;
import org.h2.test.unit.TestMathUtils;
import org.h2.test.unit.TestMemoryUnmapper;
import org.h2.test.unit.TestMode;
import org.h2.test.unit.TestModifyOnWrite;
import org.h2.test.unit.TestNetUtils;
import org.h2.test.unit.TestObjectDeserialization;
import org.h2.test.unit.TestOldVersion;
import org.h2.test.unit.TestOverflow;
import org.h2.test.unit.TestPageStore;
import org.h2.test.unit.TestPageStoreCoverage;
import org.h2.test.unit.TestPattern;
import org.h2.test.unit.TestPerfectHash;
import org.h2.test.unit.TestPgServer;
import org.h2.test.unit.TestReader;
import org.h2.test.unit.TestRecovery;
import org.h2.test.unit.TestReopen;
import org.h2.test.unit.TestSampleApps;
import org.h2.test.unit.TestScriptReader;
import org.h2.test.unit.TestSecurity;
import org.h2.test.unit.TestShell;
import org.h2.test.unit.TestSort;
import org.h2.test.unit.TestStreams;
import org.h2.test.unit.TestStringCache;
import org.h2.test.unit.TestStringUtils;
import org.h2.test.unit.TestSubqueryPerformanceOnLazyExecutionMode;
import org.h2.test.unit.TestTimeStampWithTimeZone;
import org.h2.test.unit.TestTools;
import org.h2.test.unit.TestTraceSystem;
import org.h2.test.unit.TestUtils;
import org.h2.test.unit.TestValue;
import org.h2.test.unit.TestValueHashMap;
import org.h2.test.unit.TestValueMemory;
import org.h2.test.utils.OutputCatcher;
import org.h2.test.utils.SelfDestructor;
import org.h2.test.utils.TestColumnNamer;
......
......@@ -7,9 +7,9 @@ package org.h2.test.unit;
import org.h2.command.dml.SetTypes;
import org.h2.test.TestBase;
import org.h2.test.TestDb;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
......@@ -18,7 +18,7 @@ import java.sql.Statement;
/**
* Test subquery performance with lazy query execution mode {@link SetTypes#LAZY_QUERY_EXECUTION}.
*/
public class TestSubqueryPerformanceOnLazyExecutionMode extends TestBase {
public class TestSubqueryPerformanceOnLazyExecutionMode extends TestDb {
/** Rows count. */
private static final int ROWS = 5000;
......@@ -31,15 +31,14 @@ public class TestSubqueryPerformanceOnLazyExecutionMode extends TestBase {
TestBase.createCaller().init().test();
}
@Override
public void test() throws Exception {
Class.forName("org.h2.Driver");
try (Connection conn = DriverManager.getConnection("jdbc:h2:mem:")) {
deleteDb("lazySubq");
try (Connection conn = getConnection("lazySubq")) {
try (Statement stmt = conn.createStatement()) {
stmt.execute("CREATE TABLE ONE(X INTEGER , Y INTEGER )");
stmt.execute("CREATE TABLE one (x INTEGER, y INTEGER )");
try (PreparedStatement prep = conn.prepareStatement("insert into one values(?,?)")) {
try (PreparedStatement prep = conn.prepareStatement("insert into one values (?,?)")) {
for (int row = 0; row < ROWS; row++) {
prep.setInt(1, row / 100);
prep.setInt(2, row);
......@@ -51,6 +50,9 @@ public class TestSubqueryPerformanceOnLazyExecutionMode extends TestBase {
testSubqueryInJoin(stmt);
}
}
finally {
deleteDb("lazySubq");
}
}
public void testSubqueryInCondition(Statement stmt) throws Exception {
......@@ -61,7 +63,7 @@ public class TestSubqueryPerformanceOnLazyExecutionMode extends TestBase {
assertTrue("Lazy execution too slow. lazy time: "
+ tLazy + ", not lazy time: " + tNotLazy,
tNotLazy * 2 > tLazy);
tNotLazy * 5 > tLazy);
}
public void testSubqueryInJoin(Statement stmt) throws Exception {
......@@ -74,7 +76,7 @@ public class TestSubqueryPerformanceOnLazyExecutionMode extends TestBase {
assertTrue("Lazy execution too slow. lazy time: "
+ tLazy + ", not lazy time: " + tNotLazy,
tNotLazy * 2 > tLazy);
tNotLazy * 5 > tLazy);
}
/**
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论