The H2 database has encountered a 'no space on device' error and the
subsequent write operations might have succeeded and corrupted the
database. The trace log and the error log for the db have been attached.
Please suggest a solution to this problem.
When starting the gerrit server, it encounters an error saying 'cannot
connect to SQL database' and fails to start.
The following is the error trace when trying to start gerrit. The h2
database trace is attached.
ReviewDB.trace.db<http://h2-database.66688.n3.nabble.com/file/n4025806/ReviewDB.trace.db>
[2013-02-19 12:39:21,469] ERROR com.google.gerrit.pgm.Daemon : Unable to
start daemon
com.google.gerrit.pgm.util.Die: Cannot connect to SQL database
at
com.google.gerrit.pgm.util.AbstractProgram.die(AbstractProgram.java:104)
at
com.google.gerrit.pgm.util.SiteProgram.createDbInjector(SiteProgram.java:183)
at com.google.gerrit.pgm.Daemon.run(Daemon.java:127)
at
com.google.gerrit.pgm.util.AbstractProgram.main(AbstractProgram.java:76)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at
com.google.gerrit.launcher.GerritLauncher.invokeProgram(GerritLauncher.java:155)
at
com.google.gerrit.launcher.GerritLauncher.mainImpl(GerritLauncher.java:89)
at
com.google.gerrit.launcher.GerritLauncher.main(GerritLauncher.java:47)
at Main.main(Main.java:25)
Caused by: org.h2.jdbc.JdbcSQLException: General error:
"java.lang.RuntimeException: rowCount expected 2485 got 2484 T82.I83"
[50000-134]
at
org.h2.message.DbException.getJdbcSQLException(DbException.java:316)
at org.h2.message.DbException.get(DbException.java:156)
at org.h2.message.DbException.convert(DbException.java:284)
at org.h2.table.RegularTable.addRow(RegularTable.java:134)
at org.h2.store.PageStore.redo(PageStore.java:1195)
at org.h2.store.PageLog.recover(PageLog.java:284)
at org.h2.store.PageStore.recover(PageStore.java:1049)
at org.h2.store.PageStore.openExisting(PageStore.java:302)
at org.h2.store.PageStore.open(PageStore.java:260)
at org.h2.engine.Database.getPageStore(Database.java:2028)
at org.h2.engine.Database.open(Database.java:531)
at org.h2.engine.Database.openDatabase(Database.java:204)
at org.h2.engine.Database.<init>(Database.java:199)
at org.h2.engine.Engine.openSession(Engine.java:56)
at org.h2.engine.Engine.openSession(Engine.java:141)
at org.h2.engine.Engine.getSession(Engine.java:120)
at org.h2.engine.Session.createSession(Session.java:119)
at
org.h2.engine.SessionRemote.connectEmbeddedOrServer(SessionRemote.java:237)
at
org.h2.engine.SessionRemote.createSession(SessionRemote.java:215)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:111)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:95)
at org.h2.Driver.connect(Driver.java:58)
at
org.apache.commons.dbcp.DriverConnectionFactory.createConnection(DriverConnectionFactory.java:38)
at
org.apache.commons.dbcp.PoolableConnectionFactory.makeObject(PoolableConnectionFactory.java:582)
at
org.apache.commons.dbcp.BasicDataSource.validateConnectionFactory(BasicDataSource.java:1556)
at
org.apache.commons.dbcp.BasicDataSource.createPoolableConnectionFactory(BasicDataSource.java:1545)
at
org.apache.commons.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:1388)
at
org.apache.commons.dbcp.BasicDataSource.getConnection(BasicDataSource.java:1044)
at com.google.gwtorm.jdbc.Database.<init>(Database.java:109)
at
com.google.gerrit.server.schema.ReviewDbDatabaseProvider.get(ReviewDbDatabaseProvider.java:39)
at
com.google.gerrit.server.schema.ReviewDbDatabaseProvider.get(ReviewDbDatabaseProvider.java:28)
at
com.google.inject.BoundProviderFactory.get(BoundProviderFactory.java:58)
at
com.google.inject.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:45)
at
com.google.inject.InjectorImpl.callInContext(InjectorImpl.java:811)
at
com.google.inject.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:42)
at com.google.inject.Scopes$1$1.get(Scopes.java:54)
at
com.google.inject.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:48)
at com.google.inject.FactoryProxy.get(FactoryProxy.java:56)
at
com.google.inject.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:45)
at
com.google.inject.InjectorImpl.callInContext(InjectorImpl.java:811)
at
com.google.inject.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:42)
at com.google.inject.Scopes$1$1.get(Scopes.java:54)
at
com.google.inject.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:48)
at
com.google.inject.InjectorBuilder$1.call(InjectorBuilder.java:200)
at
com.google.inject.InjectorBuilder$1.call(InjectorBuilder.java:194)
at
com.google.inject.InjectorImpl.callInContext(InjectorImpl.java:804)
at
com.google.inject.InjectorBuilder.loadEagerSingletons(InjectorBuilder.java:194)
at
com.google.inject.InjectorBuilder.injectDynamically(InjectorBuilder.java:176)
at
com.google.inject.InjectorBuilder.build(InjectorBuilder.java:113)
at com.google.inject.Guice.createInjector(Guice.java:92)
at
com.google.gerrit.pgm.util.SiteProgram.createDbInjector(SiteProgram.java:168)
... 10 more
Caused by: java.lang.RuntimeException: rowCount expected 2485 got 2484
T82.I83
at
org.h2.message.DbException.throwInternalError(DbException.java:226)
at org.h2.table.RegularTable.checkRowCount(RegularTable.java:144)
at org.h2.table.RegularTable.addRow(RegularTable.java:117)
... 57 more
--
You received this message because you are subscribed to the Google Groups "H2
Database" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/h2-database?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.