3

using h2 version h2-1.3.176 (with in memory db and also with local storage and also by tcp/ip) I have strange lock, see below.

connection sample: jdbc:h2:mem:test1;MVCC=TRUE;LOCK_TIMEOUT=30000 it's not a timeout problem because the program is indefinitely locked.

I've noticed the error starts after I create a temporary table: the create temporary table just goes fine, but after some ddl query, the error appears. There is'nt an error, if I don't create any temporary table.

PS: I can't use H2 1.4 because it's not stable: with that version I have the error "java.lang.IllegalStateException: Chunk XYZ not found"

Timeout trying to lock table "SYS"; SQL statement:
CREATE TABLE TestCalcField1(
a  VARCHAR(255),
b  VARCHAR(255),
i  INTEGER ,
j  INTEGER  ) [50200-176]
    at org.h2.message.DbException.getJdbcSQLException(DbException.java:344)
    at org.h2.message.DbException.get(DbException.java:178)
    at org.h2.message.DbException.get(DbException.java:154)
    at org.h2.table.RegularTable.doLock(RegularTable.java:530)
    at org.h2.table.RegularTable.lock(RegularTable.java:464)
    at org.h2.engine.Database.lockMeta(Database.java:869)
    at org.h2.command.ddl.CreateTable.update(CreateTable.java:134)
    at org.h2.command.CommandContainer.update(CommandContainer.java:79)
    at org.h2.command.Command.executeUpdate(Command.java:254)
    at org.h2.jdbc.JdbcStatement.executeUpdateInternal(JdbcStatement.java:132)
    at org.h2.jdbc.JdbcStatement.executeUpdate(JdbcStatement.java:117)
    at it.novabyte.ntools.database.NQuery.executeUpdateSQL(NQuery.java:640)
    ... 21 more

0 Answers0