hsql 2.2.6 startup failure

Help
Duff Gold
2012-11-02
2014-01-19
  • Duff Gold
    Duff Gold
    2012-11-02

    After a shutdown, we occasionally experience a failure to restart.
    This instance is running on a Windows VM. The testing group shut down the _VM_, but it appears that the hsql db shut down cleanly. We are not issuing a compact, just a shutdown when the app is terminated, to decrease the possibility that the db would get killed in the middle of writing the in-mem stuff to disk.
    Let me know if there is anything else you need.
    Thanks,
    Duff
    log excerpt:

    2012-11-02 11:55:32,202 INFO  ApplicationStateListener.logEvent(58) | Application {app-name}: stopped
    2012-11-02 11:55:32,218 INFO  SchedulerService.destroy(181) | SchedulerService HttpRequestHandler for servlet starting shut down at Fri Nov 02 11:55:32 EDT 2012…
    2012-11-02 11:55:32,218 WARN  SchedulerService.run(318) | Thread interruped during sleep - probably due to shutdown
    2012-11-02 11:55:32,218 INFO  SchedulerService.destroy(201) | SchedulerService HttpRequestHandler for servlet shut down at Fri Nov 02 11:55:32 EDT 2012
    2012-11-02 11:55:32,249 INFO  HsqlDbServerBean.destroy(123) | *** Attempting to shut down HSQLDB…
    2012-11-02 11:55:32,374 INFO  HsqlDbServerBean.destroy(133) | Attempting to shut down HSQL database…
    2012-11-02 11:55:32,546 INFO  HsqlDbServerBean.destroy(135) | Shut down operation completed OK for HSQL database in 0.172 seconds.
    2012-11-02 11:55:32,546 INFO  HsqlDbServerBean.destroy(148) | Closing all HSQL server connections…
    2012-11-02 11:55:32,546 INFO  HsqlDbServerBean.destroy(150) | HSQL server connections closed.
    2012-11-02 11:55:32,546 INFO  HsqlDbServerBean.destroy(153) | Stopping HSQL server…
    2012-11-02 11:55:32,655 INFO  HsqlDbServerBean.destroy(173) | HSQL server stopped.
    2012-11-02 11:55:32,655 INFO  HsqlDbServerBean.destroy(180) | *** HSQLDB shutdown attempt complete
    2012-11-02 11:56:25,765 INFO  PropertyFileEncryptor.setBeanFactory(47) | Encrypting properties
    2012-11-02 11:56:26,281 INFO  HsqlDbServerBean.afterPropertiesSet(108) | HSQL Server Startup sequence initiated
    2012-11-02 11:56:27,687 FATAL  ENGINE.logSevereEvent(?) | C:/Program Files/{path removed}/Database/vcdb/vcdb.data getFromFile 243393
    org.hsqldb.HsqlException: java.io.EOFException
    at org.hsqldb.error.Error.error(Unknown Source)
    at org.hsqldb.persist.RowStoreAVLDisk.get(Unknown Source)
    at org.hsqldb.persist.DataFileCache.getFromFile(Unknown Source)
    at org.hsqldb.persist.DataFileCache.get(Unknown Source)
    at org.hsqldb.persist.RowStoreAVLDisk.get(Unknown Source)
    at org.hsqldb.persist.RowStoreAVLDisk.setAccessor(Unknown Source)
    at org.hsqldb.Table.setIndexRoots(Unknown Source)
    at org.hsqldb.Table.setIndexRoots(Unknown Source)
    at org.hsqldb.StatementCommand.getResult(Unknown Source)
    at org.hsqldb.StatementCommand.execute(Unknown Source)
    at org.hsqldb.Session.executeCompiledStatement(Unknown Source)
    at org.hsqldb.scriptio.ScriptReaderText.readDDL(Unknown Source)
    at org.hsqldb.scriptio.ScriptReaderBase.readAll(Unknown Source)
    at org.hsqldb.persist.Log.processScript(Unknown Source)
    at org.hsqldb.persist.Log.open(Unknown Source)
    at org.hsqldb.persist.Logger.openPersistence(Unknown Source)
    at org.hsqldb.Database.reopen(Unknown Source)
    at org.hsqldb.Database.open(Unknown Source)
    at org.hsqldb.DatabaseManager.getDatabase(Unknown Source)
    at org.hsqldb.DatabaseManager.getDatabase(Unknown Source)
    at org.hsqldb.server.Server.openDatabases(Unknown Source)
    at org.hsqldb.server.Server.run(Unknown Source)
    at org.hsqldb.server.Server.access$000(Unknown Source)
    at org.hsqldb.server.Server$ServerThread.run(Unknown Source)
    Caused by: java.io.EOFException
    at org.hsqldb.lib.HsqlByteArrayInputStream.readInt(Unknown Source)
    at org.hsqldb.index.NodeAVLDisk.<init>(Unknown Source)
    at org.hsqldb.RowAVLDisk.<init>(Unknown Source)
    … 23 more
    2012-11-02 11:56:27,703 WARN  ENGINE.logWarningEvent(?) | java.io.EOFException in statement
    org.hsqldb.HsqlException: java.io.EOFException
    at org.hsqldb.error.Error.error(Unknown Source)
    at org.hsqldb.persist.RowStoreAVLDisk.get(Unknown Source)
    at org.hsqldb.persist.DataFileCache.getFromFile(Unknown Source)
    at org.hsqldb.persist.DataFileCache.get(Unknown Source)
    at org.hsqldb.persist.RowStoreAVLDisk.get(Unknown Source)
    at org.hsqldb.persist.RowStoreAVLDisk.setAccessor(Unknown Source)
    at org.hsqldb.Table.setIndexRoots(Unknown Source)
    at org.hsqldb.Table.setIndexRoots(Unknown Source)
    at org.hsqldb.StatementCommand.getResult(Unknown Source)
    at org.hsqldb.StatementCommand.execute(Unknown Source)
    at org.hsqldb.Session.executeCompiledStatement(Unknown Source)
    at org.hsqldb.scriptio.ScriptReaderText.readDDL(Unknown Source)
    at org.hsqldb.scriptio.ScriptReaderBase.readAll(Unknown Source)
    at org.hsqldb.persist.Log.processScript(Unknown Source)
    at org.hsqldb.persist.Log.open(Unknown Source)
    at org.hsqldb.persist.Logger.openPersistence(Unknown Source)
    at org.hsqldb.Database.reopen(Unknown Source)
    at org.hsqldb.Database.open(Unknown Source)
    at org.hsqldb.DatabaseManager.getDatabase(Unknown Source)
    at org.hsqldb.DatabaseManager.getDatabase(Unknown Source)
    at org.hsqldb.server.Server.openDatabases(Unknown Source)
    at org.hsqldb.server.Server.run(Unknown Source)
    at org.hsqldb.server.Server.access$000(Unknown Source)
    at org.hsqldb.server.Server$ServerThread.run(Unknown Source)
    Caused by: java.io.EOFException
    at org.hsqldb.lib.HsqlByteArrayInputStream.readInt(Unknown Source)
    at org.hsqldb.index.NodeAVLDisk.<init>(Unknown Source)
    at org.hsqldb.RowAVLDisk.<init>(Unknown Source)
    … 23 more
    2012-11-02 11:56:27,703 WARN  ENGINE.logWarningEvent(?) | Script processing failure
    org.hsqldb.HsqlException: error in script file line: 331 java.io.EOFException in statement
    at org.hsqldb.error.Error.error(Unknown Source)
    at org.hsqldb.scriptio.ScriptReaderText.readDDL(Unknown Source)
    at org.hsqldb.scriptio.ScriptReaderBase.readAll(Unknown Source)
    at org.hsqldb.persist.Log.processScript(Unknown Source)
    at org.hsqldb.persist.Log.open(Unknown Source)
    at org.hsqldb.persist.Logger.openPersistence(Unknown Source)
    at org.hsqldb.Database.reopen(Unknown Source)
    at org.hsqldb.Database.open(Unknown Source)
    at org.hsqldb.DatabaseManager.getDatabase(Unknown Source)
    at org.hsqldb.DatabaseManager.getDatabase(Unknown Source)
    at org.hsqldb.server.Server.openDatabases(Unknown Source)
    at org.hsqldb.server.Server.run(Unknown Source)
    at org.hsqldb.server.Server.access$000(Unknown Source)
    at org.hsqldb.server.Server$ServerThread.run(Unknown Source)
    Caused by: org.hsqldb.HsqlException: java.io.EOFException
    at org.hsqldb.error.Error.error(Unknown Source)
    at org.hsqldb.persist.RowStoreAVLDisk.get(Unknown Source)
    at org.hsqldb.persist.DataFileCache.getFromFile(Unknown Source)
    at org.hsqldb.persist.DataFileCache.get(Unknown Source)
    at org.hsqldb.persist.RowStoreAVLDisk.get(Unknown Source)
    at org.hsqldb.persist.RowStoreAVLDisk.setAccessor(Unknown Source)
    at org.hsqldb.Table.setIndexRoots(Unknown Source)
    at org.hsqldb.Table.setIndexRoots(Unknown Source)
    at org.hsqldb.StatementCommand.getResult(Unknown Source)
    at org.hsqldb.StatementCommand.execute(Unknown Source)
    at org.hsqldb.Session.executeCompiledStatement(Unknown Source)
    … 13 more
    Caused by: java.io.EOFException
    at org.hsqldb.lib.HsqlByteArrayInputStream.readInt(Unknown Source)
    at org.hsqldb.index.NodeAVLDisk.<init>(Unknown Source)
    at org.hsqldb.RowAVLDisk.<init>(Unknown Source)
    … 23 more
    2012-11-02 11:56:27,812 FATAL  ENGINE.logSevereEvent(?) | could not reopen database
    org.hsqldb.HsqlException: error in script file line: 331 java.io.EOFException in statement
    at org.hsqldb.error.Error.error(Unknown Source)
    at org.hsqldb.scriptio.ScriptReaderText.readDDL(Unknown Source)
    at org.hsqldb.scriptio.ScriptReaderBase.readAll(Unknown Source)
    at org.hsqldb.persist.Log.processScript(Unknown Source)
    at org.hsqldb.persist.Log.open(Unknown Source)
    at org.hsqldb.persist.Logger.openPersistence(Unknown Source)
    at org.hsqldb.Database.reopen(Unknown Source)
    at org.hsqldb.Database.open(Unknown Source)
    at org.hsqldb.DatabaseManager.getDatabase(Unknown Source)
    at org.hsqldb.DatabaseManager.getDatabase(Unknown Source)
    at org.hsqldb.server.Server.openDatabases(Unknown Source)
    at org.hsqldb.server.Server.run(Unknown Source)
    at org.hsqldb.server.Server.access$000(Unknown Source)
    at org.hsqldb.server.Server$ServerThread.run(Unknown Source)
    Caused by: org.hsqldb.HsqlException: java.io.EOFException
    at org.hsqldb.error.Error.error(Unknown Source)
    at org.hsqldb.persist.RowStoreAVLDisk.get(Unknown Source)
    at org.hsqldb.persist.DataFileCache.getFromFile(Unknown Source)
    at org.hsqldb.persist.DataFileCache.get(Unknown Source)
    at org.hsqldb.persist.RowStoreAVLDisk.get(Unknown Source)
    at org.hsqldb.persist.RowStoreAVLDisk.setAccessor(Unknown Source)
    at org.hsqldb.Table.setIndexRoots(Unknown Source)
    at org.hsqldb.Table.setIndexRoots(Unknown Source)
    at org.hsqldb.StatementCommand.getResult(Unknown Source)
    at org.hsqldb.StatementCommand.execute(Unknown Source)
    at org.hsqldb.Session.executeCompiledStatement(Unknown Source)
    … 13 more
    Caused by: java.io.EOFException
    at org.hsqldb.lib.HsqlByteArrayInputStream.readInt(Unknown Source)
    at org.hsqldb.index.NodeAVLDisk.<init>(Unknown Source)
    at org.hsqldb.RowAVLDisk.<init>(Unknown Source)
    … 23 more
    2012-11-02 11:56:27,906 INFO  HsqlDbServerBean.afterPropertiesSet(113) | HSQL Server listening on port 9101

     
  • Fred Toussi
    Fred Toussi
    2012-11-02

    I don't know about this issue, but 2.2.6 and 2.2.7 had an issue sometimes when shutdown did not take place. This was fixed in 2.2.8. Please upgrade to the latest version 2.2.9 or better still the latest snapshot jar.