org.h2.test.synth
Class TestHalt

java.lang.Object
  extended by org.h2.test.TestBase
      extended by org.h2.test.synth.TestHalt
Direct Known Subclasses:
TestHaltApp

public abstract class TestHalt
extends TestBase

Tests database recovery by destroying a process that writes to the database.


Field Summary
protected  java.sql.Connection conn
          The database connection.
protected static int FLAG_LOBS
          This bit flag means the test should use LOB values.
protected static int FLAG_NO_DELAY
          This bit flag means operations should be written to the transaction log immediately.
protected  int flags
          The current flags bit mask.
protected static int OP_DELETE
          This bit flag means delete operations should be performed.
protected static int OP_INSERT
          This bit flag means insert operations should be performed.
protected static int OP_SELECT
          This bit flag means select operations should be performed.
protected static int OP_UPDATE
          This bit flag means update operations should be performed.
protected  int operations
          The current operations bit mask.
protected  java.util.Random random
          The pseudo random number generator used for this test.
protected  int value
          The current test value, for example the number of rows.
 
Fields inherited from class org.h2.test.TestBase
BASE_TEST_DIR, config, start, TEMP_DIR, uniqueId
 
Constructor Summary
TestHalt()
           
 
Method Summary
protected  void disconnect()
          Close the database connection normally.
protected  java.lang.String getRandomString(int len)
          Create a random string with the specified length.
 TestBase init(TestAll conf)
          Initialize the test configuration.
 void test()
          This method will be called by the test framework.
protected  void traceOperation(java.lang.String s)
          Print a trace message to the trace file.
protected  void traceOperation(java.lang.String s, java.lang.Exception e)
          Print a trace message to the trace file.
 
Methods inherited from class org.h2.test.TestBase
assertContains, assertEqualDatabases, assertEqualReaders, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEqualStreams, assertFalse, assertFalse, assertKnownException, assertKnownException, assertNull, assertResult, assertResultRowCount, assertResultSetMeta, assertResultSetOrdered, assertSingleValue, assertSmaller, assertStartsWith, assertThrows, assertThrows, assertThrows, assertTrue, assertTrue, crash, createCaller, createCaller, createClassProxy, deleteDb, deleteDb, eatMemory, fail, fail, freeMemory, getBaseDir, getClassPath, getConnection, getConnection, getFilePassword, getMemoryUsed, getPassword, getPassword, getSize, getTestDir, getURL, getUser, init, logError, println, printTime, printTimeMemory, readString, runTest, startServerIfRequired, testCase, trace, trace, traceMemory
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

OP_INSERT

protected static final int OP_INSERT
This bit flag means insert operations should be performed.

See Also:
Constant Field Values

OP_DELETE

protected static final int OP_DELETE
This bit flag means delete operations should be performed.

See Also:
Constant Field Values

OP_UPDATE

protected static final int OP_UPDATE
This bit flag means update operations should be performed.

See Also:
Constant Field Values

OP_SELECT

protected static final int OP_SELECT
This bit flag means select operations should be performed.

See Also:
Constant Field Values

FLAG_NO_DELAY

protected static final int FLAG_NO_DELAY
This bit flag means operations should be written to the transaction log immediately.

See Also:
Constant Field Values

FLAG_LOBS

protected static final int FLAG_LOBS
This bit flag means the test should use LOB values.

See Also:
Constant Field Values

operations

protected int operations
The current operations bit mask.


flags

protected int flags
The current flags bit mask.


value

protected int value
The current test value, for example the number of rows.


conn

protected java.sql.Connection conn
The database connection.


random

protected java.util.Random random
The pseudo random number generator used for this test.

Constructor Detail

TestHalt

public TestHalt()
Method Detail

test

public void test()
Description copied from class: TestBase
This method will be called by the test framework.

Specified by:
test in class TestBase

traceOperation

protected void traceOperation(java.lang.String s)
Print a trace message to the trace file.

Parameters:
s - the message

traceOperation

protected void traceOperation(java.lang.String s,
                              java.lang.Exception e)
Print a trace message to the trace file.

Parameters:
s - the message
e - the exception or null

disconnect

protected void disconnect()
Close the database connection normally.


getRandomString

protected java.lang.String getRandomString(int len)
Create a random string with the specified length.

Parameters:
len - the number of characters
Returns:
the random string

init

public TestBase init(TestAll conf)
              throws java.lang.Exception
Description copied from class: TestBase
Initialize the test configuration.

Overrides:
init in class TestBase
Parameters:
conf - the configuration
Returns:
itself
Throws:
java.lang.Exception