Hi,

when persisting data (running on jackrabbit 2.2.4) I get a rare derby exception (NoSpaceOnPage). It seems that this has been fixed in newer versions of Apache Derby, see also:

https://issues.apache.org/jira/browse/DERBY-4577

The fix is available since version 10.7.1.1 but jackrabbit 2.2 uses 10.5.3.0_1. My question is: is Jackrabbit compatible with newer versions of Apache Derby. Has anybody experience running jackrabbit on newer versions of Apache Derby?

Here the complete stack trace of the exception:

2012-04-12 06:14:45.602 ERROR [http-8080-exec-1] BundleDbPersistenceManager.java:496 Failed to persist ChangeLog (stacktrace on DEBUG log level), blockOnConnectionLoss = false org.apache.jackrabbit.core.state.ItemStateException: failed to write bundle: eb95c74f-b0fa-4257-83d8-470d3192c566 at org.apache.jackrabbit.core.persistence.pool.BundleDbPersistenceManager.storeBundle(BundleDbPersistenceManager.java:1086) ~[jackrabbit-core-2.2.4.jar:2.2.4] at org.apache.jackrabbit.core.persistence.bundle.AbstractBundlePersistenceManager.putBundle(AbstractBundlePersistenceManager.java:684) ~[jackrabbit-core-2.2.4.jar:2.2.4] at org.apache.jackrabbit.core.persistence.bundle.AbstractBundlePersistenceManager.storeInternal(AbstractBundlePersistenceManager.java:626) ~[jackrabbit-core-2.2.4.jar:2.2.4] at org.apache.jackrabbit.core.persistence.bundle.AbstractBundlePersistenceManager.store(AbstractBundlePersistenceManager.java:503) ~[jackrabbit-core-2.2.4.jar:2.2.4] at org.apache.jackrabbit.core.persistence.pool.BundleDbPersistenceManager.store(BundleDbPersistenceManager.java:479) ~[jackrabbit-core-2.2.4.jar:2.2.4] at org.apache.jackrabbit.core.state.SharedItemStateManager$Update.end(SharedItemStateManager.java:757) [jackrabbit-core-2.2.4.jar:2.2.4] at org.apache.jackrabbit.core.state.SharedItemStateManager.update(SharedItemStateManager.java:1487) [jackrabbit-core-2.2.4.jar:2.2.4] at org.apache.jackrabbit.core.state.LocalItemStateManager.update(LocalItemStateManager.java:351) [jackrabbit-core-2.2.4.jar:2.2.4] at org.apache.jackrabbit.core.state.XAItemStateManager.update(XAItemStateManager.java:354) [jackrabbit-core-2.2.4.jar:2.2.4] at org.apache.jackrabbit.core.state.LocalItemStateManager.update(LocalItemStateManager.java:326) [jackrabbit-core-2.2.4.jar:2.2.4] at org.apache.jackrabbit.core.state.SessionItemStateManager.update(SessionItemStateManager.java:289) [jackrabbit-core-2.2.4.jar:2.2.4] at org.apache.jackrabbit.core.ItemSaveOperation.perform(ItemSaveOperation.java:258) [jackrabbit-core-2.2.4.jar:2.2.4] at org.apache.jackrabbit.core.session.SessionState.perform(SessionState.java:200) [jackrabbit-core-2.2.4.jar:2.2.4] at org.apache.jackrabbit.core.ItemImpl.perform(ItemImpl.java:91) [jackrabbit-core-2.2.4.jar:2.2.4] at org.apache.jackrabbit.core.ItemImpl.save(ItemImpl.java:329) [jackrabbit-core-2.2.4.jar:2.2.4] at org.apache.jackrabbit.core.session.SessionSaveOperation.perform(SessionSaveOperation.java:42) [jackrabbit-core-2.2.4.jar:2.2.4] at org.apache.jackrabbit.core.session.SessionState.perform(SessionState.java:200) [jackrabbit-core-2.2.4.jar:2.2.4] at org.apache.jackrabbit.core.SessionImpl.perform(SessionImpl.java:355) [jackrabbit-core-2.2.4.jar:2.2.4] at org.apache.jackrabbit.core.SessionImpl.save(SessionImpl.java:758) [jackrabbit-core-2.2.4.jar:2.2.4] at smc.broker.data.jcr.AbstractJCRData.saveInternal(AbstractJCRData.java:1153) [AbstractJCRData.class:na]
        ...
Caused by: java.sql.SQLException: nospc.U
at org.apache.derby.impl.jdbc.SQLExceptionFactory40.getSQLException(Unknown Source) ~[derby-10.5.3.0_1.jar:na] at org.apache.derby.impl.jdbc.Util.generateCsSQLException(Unknown Source) ~[derby-10.5.3.0_1.jar:na] at org.apache.derby.impl.jdbc.TransactionResourceImpl.wrapInSQLException(Unknown Source) ~[derby-10.5.3.0_1.jar:na] at org.apache.derby.impl.jdbc.TransactionResourceImpl.handleException(Unknown Source) ~[derby-10.5.3.0_1.jar:na] at org.apache.derby.impl.jdbc.EmbedConnection.handleException(Unknown Source) ~[derby-10.5.3.0_1.jar:na] at org.apache.derby.impl.jdbc.ConnectionChild.handleException(Unknown Source) ~[derby-10.5.3.0_1.jar:na] at org.apache.derby.impl.jdbc.EmbedStatement.executeStatement(Unknown Source) ~[derby-10.5.3.0_1.jar:na] at org.apache.derby.impl.jdbc.EmbedPreparedStatement.executeStatement(Unknown Source) ~[derby-10.5.3.0_1.jar:na] at org.apache.derby.impl.jdbc.EmbedPreparedStatement.execute(Unknown Source) ~[derby-10.5.3.0_1.jar:na] at org.apache.commons.dbcp.DelegatingPreparedStatement.execute(DelegatingPreparedStatement.java:172) ~[commons-dbcp-1.4.jar:1.4] at org.apache.commons.dbcp.DelegatingPreparedStatement.execute(DelegatingPreparedStatement.java:172) ~[commons-dbcp-1.4.jar:1.4] at org.apache.commons.dbcp.DelegatingPreparedStatement.execute(DelegatingPreparedStatement.java:172) ~[commons-dbcp-1.4.jar:1.4] at org.apache.jackrabbit.core.util.db.ConnectionHelper.execute(ConnectionHelper.java:438) ~[jackrabbit-core-2.2.4.jar:2.2.4] at org.apache.jackrabbit.core.util.db.ConnectionHelper.reallyUpdate(ConnectionHelper.java:316) ~[jackrabbit-core-2.2.4.jar:2.2.4] at org.apache.jackrabbit.core.util.db.ConnectionHelper$2.call(ConnectionHelper.java:304) ~[jackrabbit-core-2.2.4.jar:2.2.4] at org.apache.jackrabbit.core.util.db.ConnectionHelper$2.call(ConnectionHelper.java:300) ~[jackrabbit-core-2.2.4.jar:2.2.4] at org.apache.jackrabbit.core.util.db.ConnectionHelper$RetryManager.doTry(ConnectionHelper.java:451) ~[jackrabbit-core-2.2.4.jar:2.2.4] at org.apache.jackrabbit.core.util.db.ConnectionHelper.update(ConnectionHelper.java:300) ~[jackrabbit-core-2.2.4.jar:2.2.4] at org.apache.jackrabbit.core.persistence.pool.BundleDbPersistenceManager.storeBundle(BundleDbPersistenceManager.java:1082) ~[jackrabbit-core-2.2.4.jar:2.2.4]
        ... 85 common frames omitted
Caused by: org.apache.derby.impl.jdbc.EmbedSQLException: nospc.U
at org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(Unknown Source) ~[derby-10.5.3.0_1.jar:na] at org.apache.derby.impl.jdbc.SQLExceptionFactory40.wrapArgsForTransportAcrossDRDA(Unknown Source) ~[derby-10.5.3.0_1.jar:na]
        ... 104 common frames omitted
Caused by: org.apache.derby.impl.store.raw.data.NoSpaceOnPage: nospc.U
at org.apache.derby.impl.store.raw.data.StoredPage.logRow(Unknown Source) ~[derby-10.5.3.0_1.jar:na] at org.apache.derby.impl.store.raw.data.UpdateOperation.writeOptionalDataToBuffer(Unknown Source) ~[derby-10.5.3.0_1.jar:na] at org.apache.derby.impl.store.raw.data.UpdateOperation.<init>(Unknown Source) ~[derby-10.5.3.0_1.jar:na] at org.apache.derby.impl.store.raw.data.LoggableActions.actionUpdate(Unknown Source) ~[derby-10.5.3.0_1.jar:na] at org.apache.derby.impl.store.raw.data.StoredPage.doUpdateAtSlot(Unknown Source) ~[derby-10.5.3.0_1.jar:na] at org.apache.derby.impl.store.raw.data.BasePage.updateAtSlot(Unknown Source) ~[derby-10.5.3.0_1.jar:na] at org.apache.derby.impl.store.access.conglomerate.GenericConglomerateController.replace(Unknown Source) ~[derby-10.5.3.0_1.jar:na] at org.apache.derby.impl.sql.execute.RowChangerImpl.updateRow(Unknown Source) ~[derby-10.5.3.0_1.jar:na] at org.apache.derby.impl.sql.execute.UpdateResultSet.collectAffectedRows(Unknown Source) ~[derby-10.5.3.0_1.jar:na] at org.apache.derby.impl.sql.execute.UpdateResultSet.open(Unknown Source) ~[derby-10.5.3.0_1.jar:na] at org.apache.derby.impl.sql.GenericPreparedStatement.executeStmt(Unknown Source) ~[derby-10.5.3.0_1.jar:na] at org.apache.derby.impl.sql.GenericPreparedStatement.execute(Unknown Source) ~[derby-10.5.3.0_1.jar:na]
        ... 98 common frames omitted

Best regards,
Matthias Reischenbacher

Reply via email to