jackrabbit-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Claudiu Muresan (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (JCR-3570) Jackrabbit cluster boostrap fails when using Oracle Persistence Manager
Date Tue, 16 Apr 2013 13:31:16 GMT

    [ https://issues.apache.org/jira/browse/JCR-3570?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13632833#comment-13632833
] 

Claudiu Muresan commented on JCR-3570:
--------------------------------------

Indeed the index name is changed as being a requirement from company's deployment team.
We obtained the DDL of Jackrabbit tables and changed it according to our needs (specific tablespace
for tables/indexes/lob columns; different naming etc.).
After doing some research (please check the newer comments) the problem is that the repository
is now eagerly started in a JCA environment and this was not the case when we had 2.4.0 put
in place.
As JBoss domain starts the managed servers in the same time, and using a "fresh" Jackrabbit
install (only repository.xml configuration file) we have the above constraint violation error.
I can put the problem now as: Why can't we decide/configure the starting of the JCR repository
in a JCA environment e.g. using a <config-property/> for the resource adapter definition
in JBoss?

Thanks.
                
> Jackrabbit cluster boostrap fails when using Oracle Persistence Manager
> -----------------------------------------------------------------------
>
>                 Key: JCR-3570
>                 URL: https://issues.apache.org/jira/browse/JCR-3570
>             Project: Jackrabbit Content Repository
>          Issue Type: Bug
>          Components: clustering
>    Affects Versions: 2.6
>         Environment: Linux jaguar 2.6.32-262.el6.x86_64 #1 SMP Sun Apr 8 18:38:00 EDT
2012 x86_64 x86_64 x86_64 GNU/Linux 
> Jackrabbit 2.6.0 JCA deployed on JBoss AS 7.1.0.final cluster configuration (domain setup
with 2 managed server instances on the same machine)
>            Reporter: Claudiu Muresan
>            Priority: Blocker
>         Attachments: repository_server1.xml, repository_server2.xml
>
>
> The 2 managed server instances are deployed jackrabbit-jca.rar archive using jboss cli.
> repository.xml is available for both instances at locations:
> (instance1 = server1 : /opt/kmp/jboss-7.1.0.Final/domain/servers/server1/data/jackrabbit)
> (instance2 = server2 : /opt/kmp/jboss-7.1.0.Final/domain/servers/server2/data/jackrabbit)
> The difference between the 2 repository xml files is given by the name of the cluster
node.
> server1 is known as node1 in Jackrabbit cluster
> server2 is known as node2 in Jackrabbit cluster
> JBoss starts the deployment of jackrabbit rar archive in the same time. Please note that
Jackrabbit tables/indexes have been created using an SQL script prior to jackrabbit deployment.
No data is added into the tables.
> One of the managed server instances e.g. server1 is able to add the the implicit node
type definitions as bundles into version_bundle and default_bundle respectively. The problem
is that the other managed server is trying to also store the bundles and we have a referential
integrity error.
> server2 instance fails with below exception:
> 12:14:11,502 ERROR [org.apache.jackrabbit.core.persistence.pool.BundleDbPersistenceManager]
(MSC service thread 1-3) FATAL error while writing the bundle: deadbeef-face-babe-cafe-babecafebabe:
java.sql.SQLIntegrityConstraintViolationException: ORA-00001: unique constraint (DBUSER_LOGAN.IDX_VERSION_BUNDLE_NODE_ID)
violated
>         at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:445) [ojdbc6.jar:11.2.0.3.0]
>         at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:396) [ojdbc6.jar:11.2.0.3.0]
>         at oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java:879) [ojdbc6.jar:11.2.0.3.0]
>         at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:450) [ojdbc6.jar:11.2.0.3.0]
>         at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:192) [ojdbc6.jar:11.2.0.3.0]
>         at oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:531) [ojdbc6.jar:11.2.0.3.0]
>         at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:207)
[ojdbc6.jar:11.2.0.3.0]
>         at oracle.jdbc.driver.T4CPreparedStatement.executeForRows(T4CPreparedStatement.java:1044)
[ojdbc6.jar:11.2.0.3.0]
>         at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1329)
[ojdbc6.jar:11.2.0.3.0]
>         at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3584)
[ojdbc6.jar:11.2.0.3.0]
>         at oracle.jdbc.driver.OraclePreparedStatement.execute(OraclePreparedStatement.java:3685)
[ojdbc6.jar:11.2.0.3.0]
>         at oracle.jdbc.driver.OraclePreparedStatementWrapper.execute(OraclePreparedStatementWrapper.java:1376)
[ojdbc6.jar:11.2.0.3.0]
>         at org.jboss.jca.adapters.jdbc.CachedPreparedStatement.execute(CachedPreparedStatement.java:297)
>         at org.jboss.jca.adapters.jdbc.WrappedPreparedStatement.execute(WrappedPreparedStatement.java:404)
>         at org.apache.jackrabbit.core.util.db.ConnectionHelper.execute(ConnectionHelper.java:516)
[jackrabbit-core-2.6.0.jar:2.6.0]
>         at org.apache.jackrabbit.core.util.db.ConnectionHelper.reallyUpdate(ConnectionHelper.java:344)
[jackrabbit-core-2.6.0.jar:2.6.0]
>         at org.apache.jackrabbit.core.util.db.ConnectionHelper$2.call(ConnectionHelper.java:331)
[jackrabbit-core-2.6.0.jar:2.6.0]
>         at org.apache.jackrabbit.core.util.db.ConnectionHelper$2.call(ConnectionHelper.java:327)
[jackrabbit-core-2.6.0.jar:2.6.0]
>         at org.apache.jackrabbit.core.util.db.ConnectionHelper$RetryManager.doTry(ConnectionHelper.java:550)
[jackrabbit-core-2.6.0.jar:2.6.0]
>         at org.apache.jackrabbit.core.util.db.ConnectionHelper.update(ConnectionHelper.java:327)
[jackrabbit-core-2.6.0.jar:2.6.0]
>         at org.apache.jackrabbit.core.persistence.pool.BundleDbPersistenceManager.storeBundle(BundleDbPersistenceManager.java:950)
[jackrabbit-core-2.6.0.jar:2.6.0]
>         at org.apache.jackrabbit.core.persistence.bundle.AbstractBundlePersistenceManager.putBundle(AbstractBundlePersistenceManager.java:799)
[jackrabbit-core-2.6.0.jar:2.6.0]
>         at org.apache.jackrabbit.core.persistence.bundle.AbstractBundlePersistenceManager.storeInternal(AbstractBundlePersistenceManager.java:714)
[jackrabbit-core-2.6.0.jar:2.6.0]
>         at org.apache.jackrabbit.core.persistence.bundle.AbstractBundlePersistenceManager.store(AbstractBundlePersistenceManager.java:590)
[jackrabbit-core-2.6.0.jar:2.6.0]
>         at org.apache.jackrabbit.core.persistence.pool.BundleDbPersistenceManager.store(BundleDbPersistenceManager.java:482)
[jackrabbit-core-2.6.0.jar:2.6.0]
>         at org.apache.jackrabbit.core.version.InternalVersionManagerImpl.<init>(InternalVersionManagerImpl.java:174)
[jackrabbit-core-2.6.0.jar:2.6.0]
>         at org.apache.jackrabbit.core.RepositoryImpl.createVersionManager(RepositoryImpl.java:492)
[jackrabbit-core-2.6.0.jar:2.6.0]
>         at org.apache.jackrabbit.core.RepositoryImpl.<init>(RepositoryImpl.java:311)
[jackrabbit-core-2.6.0.jar:2.6.0]
>         at org.apache.jackrabbit.core.RepositoryImpl.create(RepositoryImpl.java:589)
[jackrabbit-core-2.6.0.jar:2.6.0]
>         at org.apache.jackrabbit.jca.JCARepositoryManager.createNonTransientRepository(JCARepositoryManager.java:124)
[jackrabbit-jca-2.6.0.jar:2.6.0]
>         at org.apache.jackrabbit.jca.JCARepositoryManager.createRepository(JCARepositoryManager.java:79)
[jackrabbit-jca-2.6.0.jar:2.6.0]
>         at org.apache.jackrabbit.jca.JCAManagedConnectionFactory.createRepository(JCAManagedConnectionFactory.java:209)
[jackrabbit-jca-2.6.0.jar:2.6.0]
>         at org.apache.jackrabbit.jca.JCAManagedConnectionFactory.createConnectionFactory(JCAManagedConnectionFactory.java:147)
[jackrabbit-jca-2.6.0.jar:2.6.0]
> How can we overcome this situation?
> Thanks.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Mime
View raw message