Hi Alexander,

I had two fresh new directories on my nodes (one for each node), each one that 
contains the specific repository.xml file. I'll let Jackrabbit manage the 
initialization by himself.

However, if I understand right, I should let the first node start and 
initialize the repository, then copy the indexes that the first node generated 
into the second node, then start the second node. Is this what you mean? My 
data contains custom namespaces and nodetypes. Are you talking about the 
index/, meta/, namespaces/ and nodetypes/ directories?

Thank you.

--
Emanuele Blanco

-----Original Message-----
From: Alexander Klimetschek [mailto:[EMAIL PROTECTED]
Sent: lunedì 24 novembre 2008 18.06
To: [email protected]
Subject: Re: clustering problems - Jackrabbit 1.4

Hi,

the problem is most likely the first error you get: URIIndex not
valid? javax.jcr.NamespaceException: URI for index 11 not registered.
The following errors seem to occur because after failing to read it,
Jackrabbit tries to create that node
(cafebabe-cafe-babe-cafe-babecafebabe is the fixed uuid of the root
node), which gives the duplicate primary key error, because the node
is actually present in the database, but could not be read due to the
namespace problem.

How did you create the second cluster? Did you copy the
repository/namespaces and repository/nodetypes directories in the
repository directory to a fresh new cluster node? The namespaces
directory contains the namespace index, which must be the same on all
nodes. Clustering synchronizes them, but if you start with an empty
cluster node and your data contains custom namespaces (or nodetypes),
it might be required to copy these directories.

Regards,
Alex

On Mon, Nov 24, 2008 at 5:39 PM, Blanco Emanuele <[EMAIL PROTECTED]> wrote:
> Hi there,
>
> I tried to upgrade Jackrabbit to 1.4.6 in my web application. It seems 
> successful, but I still got some problems in cluster deploying. The first 
> node deploys OK, the second gives me lots of errors like:
>
> 17:35:01,381 INFO  [STDOUT] ERROR 24-11 17:35:01,376 
> (BundleDbPersistenceManager.java:loadBundle:1228)   failed to read bundle: 
> cafebabe-cafe-babe-cafe-babecafebabe: java.lang.IllegalStateException: 
> URIIndex not valid? javax.jcr.NamespaceException: URI for index 11 not 
> registered.
> 17:35:01,425 INFO  [STDOUT] ERROR 24-11 17:35:01,422 
> (ConnectionRecoveryManager.java:logException:447)   could not execute 
> statement, reason: ORA-00001: violata restrizione di unicità 
> (COOPTRACE.DEFAULT_BUNDLE_IDX)
> , state/code: 23000/1
> 17:35:01,434 INFO  [STDOUT] ERROR 24-11 17:35:01,429 
> (Oracle9PersistenceManager.java:storeBundle:127)    failed to write bundle: 
> deadbeef-cafe-babe-cafe-babecafebabe
> java.sql.SQLException: ORA-00001: violata restrizione di unicità 
> (COOPTRACE.DEFAULT_BUNDLE_IDX)
>
>        at 
> oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)
>        at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331)
>        at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:288)
>        at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:745)
>        at 
> oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:216)
>        at 
> oracle.jdbc.driver.T4CPreparedStatement.executeForRows(T4CPreparedStatement.java:966)
>        at 
> oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1170)
>        at 
> oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3339)
>        at 
> oracle.jdbc.driver.OraclePreparedStatement.execute(OraclePreparedStatement.java:3445)
>        at 
> org.apache.jackrabbit.core.persistence.bundle.util.ConnectionRecoveryManager.executeStmtInternal(ConnectionRecoveryManager.java:365)
>        at 
> org.apache.jackrabbit.core.persistence.bundle.util.ConnectionRecoveryManager.executeStmtInternal(ConnectionRecoveryManager.java:292)
>        at 
> org.apache.jackrabbit.core.persistence.bundle.util.ConnectionRecoveryManager.executeStmt(ConnectionRecoveryManager.java:257)
>        at 
> org.apache.jackrabbit.core.persistence.bundle.util.ConnectionRecoveryManager.executeStmt(ConnectionRecoveryManager.java:237)
>        at 
> org.apache.jackrabbit.core.persistence.bundle.Oracle9PersistenceManager.storeBundle(Oracle9PersistenceManager.java:124)
>        at 
> org.apache.jackrabbit.core.persistence.bundle.AbstractBundlePersistenceManager.putBundle(AbstractBundlePersistenceManager.java:703)
>        at 
> org.apache.jackrabbit.core.persistence.bundle.AbstractBundlePersistenceManager.store(AbstractBundlePersistenceManager.java:643)
>        at 
> org.apache.jackrabbit.core.persistence.bundle.BundleDbPersistenceManager.store(BundleDbPersistenceManager.java:526)
>        at 
> org.apache.jackrabbit.core.state.SharedItemStateManager.createRootNodeState(SharedItemStateManager.java:1084)
>        at 
> org.apache.jackrabbit.core.state.SharedItemStateManager.<init>(SharedItemStateManager.java:194)
>        at 
> org.apache.jackrabbit.core.RepositoryImpl.createItemStateManager(RepositoryImpl.java:1201)
>        at 
> org.apache.jackrabbit.core.RepositoryImpl$WorkspaceInfo.doInitialize(RepositoryImpl.java:1753)
>        at 
> org.apache.jackrabbit.core.RepositoryImpl$WorkspaceInfo.initialize(RepositoryImpl.java:1724)
>        at 
> org.apache.jackrabbit.core.RepositoryImpl.initWorkspace(RepositoryImpl.java:576)
>        at 
> org.apache.jackrabbit.core.RepositoryImpl.initStartupWorkspaces(RepositoryImpl.java:415)
>        at 
> org.apache.jackrabbit.core.RepositoryImpl.<init>(RepositoryImpl.java:305)
>        at 
> org.apache.jackrabbit.core.RepositoryImpl.create(RepositoryImpl.java:557)
>        at 
> org.apache.jackrabbit.core.TransientRepository$2.getRepository(TransientRepository.java:245)
>        at 
> org.apache.jackrabbit.core.TransientRepository.startRepository(TransientRepository.java:265)
>        at 
> org.apache.jackrabbit.core.TransientRepository.login(TransientRepository.java:333)
>        at 
> org.apache.jackrabbit.core.TransientRepository.login(TransientRepository.java:363)
>        at 
> org.drools.brms.server.repository.BRMSRepositoryConfiguration.newSession(BRMSRepositoryConfiguration.java:91)
>
> and
>
> 17:35:02,054 INFO  [STDOUT] ERROR 24-11 17:35:02,049 
> (RepositoryImpl.java:initStartupWorkspaces:418)     Failed to initialize 
> workspace 'default'
> javax.jcr.RepositoryException: failed to instantiate shared item state 
> manager: failed to write bundle: deadbeef-cafe-babe-cafe-babecafebabe: failed 
> to write bundle: deadbeef-cafe-babe-cafe-babecafebabe
>        at 
> org.apache.jackrabbit.core.RepositoryImpl$WorkspaceInfo.doInitialize(RepositoryImpl.java:1771)
>        at 
> org.apache.jackrabbit.core.RepositoryImpl$WorkspaceInfo.initialize(RepositoryImpl.java:1724)
>        at 
> org.apache.jackrabbit.core.RepositoryImpl.initWorkspace(RepositoryImpl.java:576)
>        at 
> org.apache.jackrabbit.core.RepositoryImpl.initStartupWorkspaces(RepositoryImpl.java:415)
>        at 
> org.apache.jackrabbit.core.RepositoryImpl.<init>(RepositoryImpl.java:305)
>        at 
> org.apache.jackrabbit.core.RepositoryImpl.create(RepositoryImpl.java:557)
>        at 
> org.apache.jackrabbit.core.TransientRepository$2.getRepository(TransientRepository.java:245)
>        at 
> org.apache.jackrabbit.core.TransientRepository.startRepository(TransientRepository.java:265)
>        at 
> org.apache.jackrabbit.core.TransientRepository.login(TransientRepository.java:333)
>        at 
> org.apache.jackrabbit.core.TransientRepository.login(TransientRepository.java:363)
>        at 
> org.drools.brms.server.repository.BRMSRepositoryConfiguration.newSession(BRMSRepositoryConfiguration.java:91)
>        at 
> org.drools.brms.server.repository.BRMSRepositoryConfiguration.create(BRMSRepositoryConfiguration.java:58)
>
> The ORA error description is in Italian and it means that an integrity 
> violation has occurred (I guess a duplicate primary key).
>
> Any suggestions?
>
> Thank you.
>
> --
> Emanuele Blanco
>
>
> ________________________________
> --
> The information transmitted is intended for the person or entity to which it 
> is addressed and may contain confidential and/or privileged material. Any 
> review, retransmission, dissemination or other use of, or taking of any 
> action in reliance upon, this information by persons or entities other than 
> the intended recipient is prohibited. If you received this in error, please 
> contact the sender and delete the material from any computer.
>



--
Alexander Klimetschek
[EMAIL PROTECTED]

--
The information transmitted is intended for the person or entity to which it is 
addressed and may contain confidential and/or privileged material. Any review, 
retransmission, dissemination or other use of, or taking of any action in 
reliance upon, this information by persons or entities other than the intended 
recipient is prohibited. If you received this in error, please contact the 
sender and delete the material from any computer.

Reply via email to