Hi all,
we are currently facing a problem with Jackrabbit 1.6.2 and Oracle
10.4.0.2 when trying to add new nodes. We are embedding jackrabbit in
our application and running on a WebSphere 6.1 application server.
The stacktrace is:
ERROR BundleDbPersistenceManager - failed to write bundle:
abf3ffc7-16eb-4b2a-b22b-756ec9d078e4
java.sql.SQLException: Io exception: Checksum fail
at
oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:12
5)
at
oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:16
2)
at
oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:27
4)
at
oracle.jdbc.driver.T4CPreparedStatement.execute_for_rows(T4CPreparedStat
ement.java:646)
at
oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.
java:1081)
at
oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePrepare
dStatement.java:2905)
at
oracle.jdbc.driver.OraclePreparedStatement.execute(OraclePreparedStateme
nt.java:2996)
at
org.apache.jackrabbit.core.persistence.bundle.util.ConnectionRecoveryMan
ager.executeStmtInternal(ConnectionRecoveryManager.java:371)
at
org.apache.jackrabbit.core.persistence.bundle.util.ConnectionRecoveryMan
ager.executeStmtInternal(ConnectionRecoveryManager.java:298)
at
org.apache.jackrabbit.core.persistence.bundle.util.ConnectionRecoveryMan
ager.executeStmt(ConnectionRecoveryManager.java:261)
at
org.apache.jackrabbit.core.persistence.bundle.util.ConnectionRecoveryMan
ager.executeStmt(ConnectionRecoveryManager.java:239)
at
org.apache.jackrabbit.core.persistence.bundle.BundleDbPersistenceManager
.storeBundle(BundleDbPersistenceManager.java:1247)
at
org.apache.jackrabbit.core.persistence.bundle.AbstractBundlePersistenceM
anager.putBundle(AbstractBundlePersistenceManager.java:711)
at
org.apache.jackrabbit.core.persistence.bundle.AbstractBundlePersistenceM
anager.storeInternal(AbstractBundlePersistenceManager.java:651)
at
org.apache.jackrabbit.core.persistence.bundle.AbstractBundlePersistenceM
anager.store(AbstractBundlePersistenceManager.java:515)
at
org.apache.jackrabbit.core.persistence.bundle.BundleDbPersistenceManager
.store(BundleDbPersistenceManager.java:568)
at
org.apache.jackrabbit.core.state.SharedItemStateManager$Update.end(Share
dItemStateManager.java:741)
at
org.apache.jackrabbit.core.state.SharedItemStateManager.update(SharedIte
mStateManager.java:1160)
at
org.apache.jackrabbit.core.state.LocalItemStateManager.update(LocalItemS
tateManager.java:351)
at
org.apache.jackrabbit.core.state.LocalItemStateManager.update(LocalItemS
tateManager.java:326)
at
org.apache.jackrabbit.core.version.AbstractVersionManager$WriteOperation
.save(AbstractVersionManager.java:189)
at
org.apache.jackrabbit.core.version.AbstractVersionManager.createVersionH
istory(AbstractVersionManager.java:369)
at
org.apache.jackrabbit.core.version.VersionManagerImpl$1.run(VersionManag
erImpl.java:215)
at
org.apache.jackrabbit.core.version.VersionManagerImpl$DynamicESCFactory.
doSourced(VersionManagerImpl.java:580)
at
org.apache.jackrabbit.core.version.VersionManagerImpl.createVersionHisto
ry(VersionManagerImpl.java:212)
at
org.apache.jackrabbit.core.version.XAVersionManager.createVersionHistory
(XAVersionManager.java:157)
at
org.apache.jackrabbit.core.version.AbstractVersionManager.getVersionHist
ory(AbstractVersionManager.java:273)
at
org.apache.jackrabbit.core.ItemImpl.initVersionHistories(ItemImpl.java:7
38)
at
org.apache.jackrabbit.core.ItemImpl.save(ItemImpl.java:1097)
at
org.apache.jackrabbit.core.SessionImpl.save(SessionImpl.java:915)
...
That problem occurs with a complete fresh installation of jackrabbit.
The strange thing is that some nodes could be added while others fail
with the above exception. I also saw the following error log from
jackrabbit:
ERROR ConnectionRecoveryManager - could not execute statement, reason:
E/A-Exception: Checksum fail, state/code: null/17002
ERROR ConnectionRecoveryManager - could not execute statement, reason:
E/A-Exception: Checksum fail, state/code: null/17002
ERROR ConnectionRecoveryManager - failed to close connection, reason:
Getrennte Verbindung, state/code: null/17008
ERROR ConnectionRecoveryManager - failed to close connection, reason:
Getrennte Verbindung, state/code: null/17008
Our complete environment is:
Java VM:
--------------------------
java version "1.5.0_24"
Java(TM) 2 Runtime Environment, Standard Edition (IBM build 1.5.0_24-b02
20100703 solaris sparc (SR12))
Java HotSpot(TM) Server VM (build 1.5.0_24-b02, mixed mode)
IBM Java ORB build orb50-20100629
XML build XSLT4J Java 2.7.19
XML build IBM JAXP 1.3.11
XML build XML4J 4.4.19
Database:
---------------------------
- Oracle Database 10g Enterprise Edition Release 10.1.0.4.0 - 64bit
Production
With the Partitioning, Oracle Label Security, OLAP and Data Mining
options
App Server:
---------------------------
Websphere ist Version 6.1.0.33.
JDBC driver:
---------------------------
ojdbc4.jar (10.1.0.4.0) for Java 1.4
Anybody an idea? I stick with that exception. I have already googled for
the specific error code or stack but I didn`t find anything. Any help is
appreciated!
Best regards
Sascha