我正在尝试使用2.2.9版,Hibernate 3.6.9和Spring 3.1.2建立一个HSQL数据库进行测试.我们一直在使用本地postgresql数据库,但正在进行测试.我有40-50个测试类,共有200多个测试.如果从eclipse单独运行,每个测试类都可以正常工作.当我使用Maven编译和测试所有测试错误时.在某些时候,它似乎试图再次运行我的init.sql脚本并再次创建表.我把这作为我的最终原因:
Caused by: org.hsqldb.HsqlException: object name already exists: DUAL_ASSET_ASSETID_SEQ
at org.hsqldb.error.Error.error(Unknown Source)
at org.hsqldb.error.Error.error(Unknown Source)
at org.hsqldb.SchemaObjectSet.checkAdd(Unknown Source)
at org.hsqldb.SchemaManager.checkSchemaObjectNotExists(Unknown Source)
at org.hsqldb.StatementSchema.setOrCheckObjectName(Unknown Source)
at org.hsqldb.StatementSchema.getResult(Unknown Source)
at org.hsqldb.StatementSchema.execute(Unknown Source)
at org.hsqldb.Session.executeCompiledStatement(Unknown Source)
at org.hsqldb.Session.executeDirectStatement(Unknown Source)
at org.hsqldb.Session.execute(Unknown Source) ... 52 more
Run Code Online (Sandbox Code Playgroud)
我在创建该表时尝试使用'IF NOT EXISTS',但是当我创建序列时,我遇到了同样的错误.所以它试图做的不仅仅是那一个表,我不能在CREATE SEQUENCE语句中使用'IF NOT EXISTS',所以我被困在那里.
我的数据似乎再次加载有什么原因吗?我偶尔也会遇到这个错误:
2012-10-16 10:55:48,489 [Thread-0] WARN
org.springframework.jdbc.datasource.embedded.HsqlEmbeddedDatabaseConfigurer:shutdown:46 - Could not shutdown embedded database java.sql.SQLException: Database lock acquisition failure: attempt to connect while db opening /closing
at org.hsqldb.jdbc.Util.sqlException(Unknown Source)
at org.hsqldb.jdbc.Util.sqlException(Unknown Source) …Run Code Online (Sandbox Code Playgroud) hsqldb ×1