Search in sources :

Example 1 with TestQueryCache

use of org.h2.test.db.TestQueryCache in project h2database by h2database.

the class TestOptimizations method testQueryCache.

private void testQueryCache(boolean optimize) throws SQLException {
    deleteDb("optimizations");
    Connection conn = getConnection("optimizations");
    Statement stat = conn.createStatement();
    if (optimize) {
        stat.execute("set OPTIMIZE_REUSE_RESULTS 1");
    } else {
        stat.execute("set OPTIMIZE_REUSE_RESULTS 0");
    }
    stat.execute("create table test(id int)");
    stat.execute("create table test2(id int)");
    stat.execute("insert into test values(1), (1), (2)");
    stat.execute("insert into test2 values(1)");
    PreparedStatement prep = conn.prepareStatement("select * from test where id = (select id from test2)");
    ResultSet rs1 = prep.executeQuery();
    rs1.next();
    assertEquals(1, rs1.getInt(1));
    rs1.next();
    assertEquals(1, rs1.getInt(1));
    assertFalse(rs1.next());
    stat.execute("update test2 set id = 2");
    ResultSet rs2 = prep.executeQuery();
    rs2.next();
    assertEquals(2, rs2.getInt(1));
    conn.close();
}
Also used : PreparedStatement(java.sql.PreparedStatement) Statement(java.sql.Statement) Connection(java.sql.Connection) SimpleResultSet(org.h2.tools.SimpleResultSet) ResultSet(java.sql.ResultSet) PreparedStatement(java.sql.PreparedStatement)

Example 2 with TestQueryCache

use of org.h2.test.db.TestQueryCache in project h2database by h2database.

the class TestAll method test.

/**
 * Run all tests with the current settings.
 */
private void test() throws SQLException {
    System.out.println();
    System.out.println("Test " + toString() + " (" + Utils.getMemoryUsed() + " KB used)");
    beforeTest();
    // db
    addTest(new TestScriptSimple());
    addTest(new TestScript());
    addTest(new TestAlter());
    addTest(new TestAlterSchemaRename());
    addTest(new TestAutoRecompile());
    addTest(new TestBackup());
    addTest(new TestBigDb());
    addTest(new TestBigResult());
    addTest(new TestCases());
    addTest(new TestCheckpoint());
    addTest(new TestCompatibility());
    addTest(new TestCompatibilityOracle());
    addTest(new TestCsv());
    addTest(new TestDeadlock());
    if (vmlens) {
        return;
    }
    addTest(new TestDrop());
    addTest(new TestDuplicateKeyUpdate());
    addTest(new TestEncryptedDb());
    addTest(new TestExclusive());
    addTest(new TestFullText());
    addTest(new TestFunctionOverload());
    addTest(new TestFunctions());
    addTest(new TestInit());
    addTest(new TestIndex());
    addTest(new TestIndexHints());
    addTest(new TestLargeBlob());
    addTest(new TestLinkedTable());
    addTest(new TestListener());
    addTest(new TestLob());
    addTest(new TestMergeUsing());
    addTest(new TestMultiConn());
    addTest(new TestMultiDimension());
    addTest(new TestMultiThreadedKernel());
    addTest(new TestOpenClose());
    addTest(new TestOptimizations());
    addTest(new TestOptimizerHints());
    addTest(new TestOutOfMemory());
    addTest(new TestReadOnly());
    addTest(new TestRecursiveQueries());
    addTest(new TestGeneralCommonTableQueries());
    if (!memory) {
        // requires persistent store for reconnection tests
        addTest(new TestPersistentCommonTableExpressions());
    }
    addTest(new TestRights());
    addTest(new TestRunscript());
    addTest(new TestSQLInjection());
    addTest(new TestSessionsLocks());
    addTest(new TestSelectCountNonNullColumn());
    addTest(new TestSequence());
    addTest(new TestShow());
    addTest(new TestSpaceReuse());
    addTest(new TestSpatial());
    addTest(new TestSpeed());
    addTest(new TestTableEngines());
    addTest(new TestRowFactory());
    addTest(new TestTempTables());
    addTest(new TestTransaction());
    addTest(new TestTriggersConstraints());
    addTest(new TestTwoPhaseCommit());
    addTest(new TestView());
    addTest(new TestViewAlterTable());
    addTest(new TestViewDropView());
    addTest(new TestReplace());
    addTest(new TestSynonymForTable());
    addTest(new TestColumnNamer());
    // jaqu
    addTest(new AliasMapTest());
    addTest(new AnnotationsTest());
    addTest(new ClobTest());
    addTest(new ModelsTest());
    addTest(new SamplesTest());
    addTest(new UpdateTest());
    // jdbc
    addTest(new TestBatchUpdates());
    addTest(new TestCallableStatement());
    addTest(new TestCancel());
    addTest(new TestConcurrentConnectionUsage());
    addTest(new TestConnection());
    addTest(new TestDatabaseEventListener());
    addTest(new TestJavaObject());
    addTest(new TestLimitUpdates());
    addTest(new TestLobApi());
    addTest(new TestManyJdbcObjects());
    addTest(new TestMetaData());
    addTest(new TestNativeSQL());
    addTest(new TestPreparedStatement());
    addTest(new TestResultSet());
    addTest(new TestStatement());
    addTest(new TestGetGeneratedKeys());
    addTest(new TestTransactionIsolation());
    addTest(new TestUpdatableResultSet());
    addTest(new TestZloty());
    addTest(new TestCustomDataTypesHandler());
    addTest(new TestSetCollation());
    // jdbcx
    addTest(new TestConnectionPool());
    addTest(new TestDataSource());
    addTest(new TestXA());
    addTest(new TestXASimple());
    // server
    addTest(new TestAutoServer());
    addTest(new TestNestedLoop());
    // mvcc & row level locking
    addTest(new TestMvcc1());
    addTest(new TestMvcc2());
    addTest(new TestMvcc3());
    addTest(new TestMvcc4());
    addTest(new TestMvccMultiThreaded());
    addTest(new TestMvccMultiThreaded2());
    addTest(new TestRowLocks());
    // synth
    addTest(new TestBtreeIndex());
    addTest(new TestConcurrentUpdate());
    addTest(new TestDiskFull());
    addTest(new TestCrashAPI());
    addTest(new TestFuzzOptimizations());
    addTest(new TestLimit());
    addTest(new TestRandomCompare());
    addTest(new TestKillRestart());
    addTest(new TestKillRestartMulti());
    addTest(new TestMultiThreaded());
    addTest(new TestOuterJoins());
    addTest(new TestNestedJoins());
    addTest(new TestStringAggCompatibility());
    runAddedTests();
    // serial
    addTest(new TestDateStorage());
    addTest(new TestDriver());
    addTest(new TestJavaObjectSerializer());
    addTest(new TestLocale());
    addTest(new TestMemoryUsage());
    addTest(new TestMultiThread());
    addTest(new TestPowerOff());
    addTest(new TestReorderWrites());
    addTest(new TestRandomSQL());
    addTest(new TestQueryCache());
    addTest(new TestUrlJavaObjectSerializer());
    addTest(new TestWeb());
    runAddedTests(1);
    afterTest();
}
Also used : TestDuplicateKeyUpdate(org.h2.test.db.TestDuplicateKeyUpdate) TestDeadlock(org.h2.test.db.TestDeadlock) TestPreparedStatement(org.h2.test.jdbc.TestPreparedStatement) TestXA(org.h2.test.jdbcx.TestXA) TestTransactionIsolation(org.h2.test.jdbc.TestTransactionIsolation) TestViewDropView(org.h2.test.db.TestViewDropView) TestRandomCompare(org.h2.test.synth.TestRandomCompare) TestSetCollation(org.h2.test.db.TestSetCollation) TestSelectCountNonNullColumn(org.h2.test.db.TestSelectCountNonNullColumn) TestConcurrentConnectionUsage(org.h2.test.jdbc.TestConcurrentConnectionUsage) TestCompatibility(org.h2.test.db.TestCompatibility) TestUpdatableResultSet(org.h2.test.jdbc.TestUpdatableResultSet) TestMvccMultiThreaded(org.h2.test.mvcc.TestMvccMultiThreaded) TestDatabaseEventListener(org.h2.test.jdbc.TestDatabaseEventListener) TestCheckpoint(org.h2.test.db.TestCheckpoint) TestListener(org.h2.test.db.TestListener) TestCustomDataTypesHandler(org.h2.test.jdbc.TestCustomDataTypesHandler) TestOpenClose(org.h2.test.db.TestOpenClose) TestEncryptedDb(org.h2.test.db.TestEncryptedDb) TestExclusive(org.h2.test.db.TestExclusive) TestViewAlterTable(org.h2.test.db.TestViewAlterTable) TestGetGeneratedKeys(org.h2.test.jdbc.TestGetGeneratedKeys) TestFunctions(org.h2.test.db.TestFunctions) TestManyJdbcObjects(org.h2.test.jdbc.TestManyJdbcObjects) TestLobApi(org.h2.test.jdbc.TestLobApi) TestLocale(org.h2.test.unit.TestLocale) TestLimit(org.h2.test.synth.TestLimit) TestDataSource(org.h2.test.jdbcx.TestDataSource) TestTransaction(org.h2.test.db.TestTransaction) TestJavaObject(org.h2.test.jdbc.TestJavaObject) TestRowLocks(org.h2.test.rowlock.TestRowLocks) TestWeb(org.h2.test.server.TestWeb) TestAutoServer(org.h2.test.server.TestAutoServer) TestNestedLoop(org.h2.test.server.TestNestedLoop) TestMultiDimension(org.h2.test.db.TestMultiDimension) UpdateTest(org.h2.test.jaqu.UpdateTest) TestCases(org.h2.test.db.TestCases) TestJavaObjectSerializer(org.h2.test.jdbc.TestJavaObjectSerializer) TestUrlJavaObjectSerializer(org.h2.test.jdbc.TestUrlJavaObjectSerializer) TestMultiThread(org.h2.test.db.TestMultiThread) TestLob(org.h2.test.db.TestLob) TestFuzzOptimizations(org.h2.test.synth.TestFuzzOptimizations) TestRunscript(org.h2.test.db.TestRunscript) TestTableEngines(org.h2.test.db.TestTableEngines) TestMemoryUsage(org.h2.test.db.TestMemoryUsage) TestConnection(org.h2.test.jdbc.TestConnection) TestRandomSQL(org.h2.test.synth.TestRandomSQL) TestRights(org.h2.test.db.TestRights) TestXASimple(org.h2.test.jdbcx.TestXASimple) TestLargeBlob(org.h2.test.db.TestLargeBlob) TestBatchUpdates(org.h2.test.jdbc.TestBatchUpdates) TestStringAggCompatibility(org.h2.test.synth.TestStringAggCompatibility) TestMvccMultiThreaded2(org.h2.test.mvcc.TestMvccMultiThreaded2) TestSequence(org.h2.test.db.TestSequence) AliasMapTest(org.h2.test.jaqu.AliasMapTest) TestMergeUsing(org.h2.test.db.TestMergeUsing) TestMetaData(org.h2.test.jdbc.TestMetaData) TestMultiThreadedKernel(org.h2.test.db.TestMultiThreadedKernel) TestConcurrentUpdate(org.h2.test.synth.TestConcurrentUpdate) TestResultSet(org.h2.test.jdbc.TestResultSet) ModelsTest(org.h2.test.jaqu.ModelsTest) TestSpaceReuse(org.h2.test.db.TestSpaceReuse) TestDriver(org.h2.test.jdbc.TestDriver) TestGeneralCommonTableQueries(org.h2.test.db.TestGeneralCommonTableQueries) TestBigDb(org.h2.test.db.TestBigDb) TestOutOfMemory(org.h2.test.db.TestOutOfMemory) TestFunctionOverload(org.h2.test.db.TestFunctionOverload) TestPowerOff(org.h2.test.db.TestPowerOff) TestPersistentCommonTableExpressions(org.h2.test.db.TestPersistentCommonTableExpressions) TestKillRestartMulti(org.h2.test.synth.TestKillRestartMulti) TestBtreeIndex(org.h2.test.synth.TestBtreeIndex) TestOptimizations(org.h2.test.db.TestOptimizations) TestMultiThreaded(org.h2.test.synth.TestMultiThreaded) TestLinkedTable(org.h2.test.db.TestLinkedTable) TestTriggersConstraints(org.h2.test.db.TestTriggersConstraints) SamplesTest(org.h2.test.jaqu.SamplesTest) TestSynonymForTable(org.h2.test.db.TestSynonymForTable) TestReadOnly(org.h2.test.db.TestReadOnly) TestCompatibilityOracle(org.h2.test.db.TestCompatibilityOracle) TestInit(org.h2.test.server.TestInit) TestCsv(org.h2.test.db.TestCsv) TestFullText(org.h2.test.db.TestFullText) TestIndexHints(org.h2.test.db.TestIndexHints) AnnotationsTest(org.h2.test.jaqu.AnnotationsTest) TestDiskFull(org.h2.test.synth.TestDiskFull) TestStatement(org.h2.test.jdbc.TestStatement) TestReplace(org.h2.test.db.TestReplace) TestScriptSimple(org.h2.test.scripts.TestScriptSimple) TestTwoPhaseCommit(org.h2.test.db.TestTwoPhaseCommit) TestSessionsLocks(org.h2.test.db.TestSessionsLocks) TestIndex(org.h2.test.db.TestIndex) TestOuterJoins(org.h2.test.synth.TestOuterJoins) TestAlterSchemaRename(org.h2.test.db.TestAlterSchemaRename) TestBackup(org.h2.test.db.TestBackup) TestAutoRecompile(org.h2.test.db.TestAutoRecompile) TestShow(org.h2.test.db.TestShow) TestSQLInjection(org.h2.test.db.TestSQLInjection) TestDrop(org.h2.test.db.TestDrop) TestConnectionPool(org.h2.test.jdbcx.TestConnectionPool) TestCancel(org.h2.test.jdbc.TestCancel) TestScript(org.h2.test.scripts.TestScript) TestCrashAPI(org.h2.test.synth.TestCrashAPI) TestRecursiveQueries(org.h2.test.db.TestRecursiveQueries) TestKillRestart(org.h2.test.synth.TestKillRestart) TestBigResult(org.h2.test.db.TestBigResult) ClobTest(org.h2.test.jaqu.ClobTest) TestNestedJoins(org.h2.test.synth.TestNestedJoins) TestRowFactory(org.h2.test.db.TestRowFactory) TestCallableStatement(org.h2.test.jdbc.TestCallableStatement) TestNativeSQL(org.h2.test.jdbc.TestNativeSQL) TestSpeed(org.h2.test.db.TestSpeed) TestTempTables(org.h2.test.db.TestTempTables) TestZloty(org.h2.test.jdbc.TestZloty) TestMultiConn(org.h2.test.db.TestMultiConn) TestMvcc3(org.h2.test.mvcc.TestMvcc3) TestMvcc4(org.h2.test.mvcc.TestMvcc4) TestMvcc1(org.h2.test.mvcc.TestMvcc1) TestSpatial(org.h2.test.db.TestSpatial) TestMvcc2(org.h2.test.mvcc.TestMvcc2) TestQueryCache(org.h2.test.db.TestQueryCache) TestAlter(org.h2.test.db.TestAlter) TestDateStorage(org.h2.test.db.TestDateStorage) TestColumnNamer(org.h2.test.utils.TestColumnNamer) TestLimitUpdates(org.h2.test.jdbc.TestLimitUpdates) TestReorderWrites(org.h2.test.poweroff.TestReorderWrites) TestView(org.h2.test.db.TestView) TestOptimizerHints(org.h2.test.db.TestOptimizerHints)

Aggregations

Connection (java.sql.Connection)1 PreparedStatement (java.sql.PreparedStatement)1 ResultSet (java.sql.ResultSet)1 Statement (java.sql.Statement)1 TestAlter (org.h2.test.db.TestAlter)1 TestAlterSchemaRename (org.h2.test.db.TestAlterSchemaRename)1 TestAutoRecompile (org.h2.test.db.TestAutoRecompile)1 TestBackup (org.h2.test.db.TestBackup)1 TestBigDb (org.h2.test.db.TestBigDb)1 TestBigResult (org.h2.test.db.TestBigResult)1 TestCases (org.h2.test.db.TestCases)1 TestCheckpoint (org.h2.test.db.TestCheckpoint)1 TestCompatibility (org.h2.test.db.TestCompatibility)1 TestCompatibilityOracle (org.h2.test.db.TestCompatibilityOracle)1 TestCsv (org.h2.test.db.TestCsv)1 TestDateStorage (org.h2.test.db.TestDateStorage)1 TestDeadlock (org.h2.test.db.TestDeadlock)1 TestDrop (org.h2.test.db.TestDrop)1 TestDuplicateKeyUpdate (org.h2.test.db.TestDuplicateKeyUpdate)1 TestEncryptedDb (org.h2.test.db.TestEncryptedDb)1