Tôi đang cố gắng thiết lập cơ sở dữ liệu HSQL để thử nghiệm, sử dụng phiên bản 2.2.9, Hibernate 3.6.9 và Spring 3.1.2. Chúng tôi đã sử dụng cơ sở dữ liệu postgresql cục bộ nhưng đang thực hiện chuyển đổi để thử nghiệm. Tôi có 40-50 bài kiểm tra với tổng số hơn 200 bài kiểm tra. Mỗi lớp thử nghiệm hoạt động tốt nếu chạy riêng lẻ từ nhật thực. Khi tôi sử dụng Maven để biên dịch và kiểm tra mọi thứ tôi có lỗi kiểm tra. Tại một số điểm có vẻ như nó đang cố gắng chạy lại tập lệnh init.sql của tôi và tạo lại các bảng. Tôi nhận được này là nguyên nhân cuối cùng của tôi:Tên đối tượng HSQLDB đã tồn tại
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
tôi đã cố gắng sử dụng 'NẾU KHÔNG EXISTS' khi tạo bảng nhưng khi tôi đi để tạo ra các chuỗi Tôi nhận được lỗi tương tự. Vì vậy, nó đang cố gắng làm nhiều hơn chỉ là một bảng, và tôi không thể sử dụng 'IF NOT EXISTS' trên một câu lệnh CREATE SEQUENCE vì vậy tôi bị mắc kẹt ở đó.
Có lý do nào khiến dữ liệu của tôi có vẻ được tải lại không? Đôi khi tôi cũng gặp phải lỗi này:
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)
at org.hsqldb.jdbc.JDBCConnection.<init>(Unknown Source)
at org.hsqldb.jdbc.JDBCDriver.getConnection(Unknown Source)
at org.hsqldb.jdbc.JDBCDriver.connect(Unknown Source)
at org.springframework.jdbc.datasource.SimpleDriverDataSource.getConnectionFromDriver(SimpleDriverDataSource.java:140)
at org.springframework.jdbc.datasource.AbstractDriverBasedDataSource.getConnectionFromDriver(AbstractDriverBasedDataSource.java:149)
at org.springframework.jdbc.datasource.AbstractDriverBasedDataSource.getConnection(AbstractDriverBasedDataSource.java:119)
at org.springframework.jdbc.datasource.embedded.AbstractEmbeddedDatabaseConfigurer.shutdown(AbstractEmbeddedDatabaseConfigurer.java:40)
at org.springframework.jdbc.datasource.embedded.EmbeddedDatabaseFactory.shutdownDatabase(EmbeddedDatabaseFactory.java:152)
at org.springframework.jdbc.datasource.embedded.EmbeddedDatabaseFactoryBean.destroy(EmbeddedDatabaseFactoryBean.java:65)
at org.springframework.beans.factory.support.DisposableBeanAdapter.destroy(DisposableBeanAdapter.java:211)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.destroyBean(DefaultSingletonBeanRegistry.java:498)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.destroySingleton(DefaultSingletonBeanRegistry.java:474)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.destroySingletons(DefaultSingletonBeanRegistry.java:442)
at org.springframework.context.support.AbstractApplicationContext.destroyBeans(AbstractApplicationContext.java:1071)
at org.springframework.context.support.AbstractApplicationContext.doClose(AbstractApplicationContext.java:1045)
at org.springframework.context.support.AbstractApplicationContext$1.run(AbstractApplicationContext.java:963) Caused by: org.hsqldb.HsqlException: Database lock acquisition failure: attempt to connect while db opening /closing at org.hsqldb.error.Error.error(Unknown Source)
at org.hsqldb.error.Error.error(Unknown Source)
at org.hsqldb.error.Error.error(Unknown Source)
at org.hsqldb.DatabaseManager.getDatabase(Unknown Source)
at org.hsqldb.DatabaseManager.newSession(Unknown Source) ... 16 more
[Câu hỏi này được đăng chéo] (http://sourceforge.net/projects/hsqldb/forums/forum/73674/topic/6025433). –