Combination View Flat View Tree View
Threads [ Previous | Next ]
toggle
Jaakko Yli-Koivisto
Liferay 5.1.4 EE update to 6.0 EE SP1 problem
March 9, 2011 12:33 AM
Answer

Jaakko Yli-Koivisto

Rank: New Member

Posts: 4

Join Date: December 1, 2008

Recent Posts

Hi!

I'm having some difficulties updating Liferay 5.1.4 EE to 6.0 EE SP1.

I've tried to do the update as instructed:

5.1.4 => 5.1 SP5 => 5.2 SP4 => 6.0 SP1 and it all goes well until I finally try to start 6.0 SP1 where Liferay does not even finish the update because of this error:

Caused by: javax.jcr.RepositoryException: Cannot instantiate persistence manager org.apache.jackrabbit.core.persistence.bundle.OraclePersistenceManager
at org.apache.jackrabbit.core.RepositoryImpl.createPersistenceManager(RepositoryImpl.java:1433)
at org.apache.jackrabbit.core.RepositoryImpl.createVersionManager(RepositoryImpl.java:502)
at org.apache.jackrabbit.core.RepositoryImpl.<init>(RepositoryImpl.java:355)
at org.apache.jackrabbit.core.RepositoryImpl.create(RepositoryImpl.java:673)
at org.apache.jackrabbit.core.TransientRepository$2.getRepository(TransientRepository.java:231)
at org.apache.jackrabbit.core.TransientRepository.startRepository(TransientRepository.java:279)
at org.apache.jackrabbit.core.TransientRepository.login(TransientRepository.java:375)
at com.liferay.portal.jcr.jackrabbit.JCRFactoryImpl.createSession(JCRFactoryImpl.java:67)
at com.liferay.portal.jcr.JCRFactoryUtil.createSession(JCRFactoryUtil.java:43)
at com.liferay.portal.jcr.JCRFactoryUtil.createSession(JCRFactoryUtil.java:47)
at com.liferay.documentlibrary.util.JCRHook.updateFile(JCRHook.java:771)
... 63 more
Caused by: java.sql.SQLException: Schema generation error: Issuing statement: create table J_V_PM_REFS (NODE_ID raw(16) not null, REFS_DATA blob not null)
at org.apache.jackrabbit.core.persistence.bundle.BundleDbPersistenceManager.checkSchema(BundleDbPersistenceManager.java:486)
at org.apache.jackrabbit.core.persistence.bundle.BundleDbPersistenceManager.init(BundleDbPersistenceManager.java:603)
at org.apache.jackrabbit.core.persistence.bundle.OraclePersistenceManager.init(OraclePersistenceManager.java:102)
at org.apache.jackrabbit.core.RepositoryImpl.createPersistenceManager(RepositoryImpl.java:1429)
... 73 more
Caused by: java.sql.SQLException: ORA-00955: name is already used by an existing object
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)

I have Jackrabbit configured to use Oracle 11g and it works fine with 5.1.4 and 5.2 SP4 (and SP5). Here is my Jackrabbit configuration:

 1
 2<?xml version="1.0"?>
 3<Repository>
 4       <FileSystem class="org.apache.jackrabbit.core.fs.db.OracleFileSystem">
 5            <param name="driver" value="oracle.jdbc.driver.OracleDriver"/>
 6            <param name="url" value="jdbc:oracle:thin:@localhost:1521:test"/>
 7            <param name="user" value="test"/>
 8            <param name="password" value="test"/>
 9            <param name="schemaObjectPrefix" value="JRREP_"/>
10        </FileSystem>
11
12    <Security appName="Jackrabbit">
13        <AccessManager class="org.apache.jackrabbit.core.security.SimpleAccessManager" />
14        <LoginModule class="org.apache.jackrabbit.core.security.SimpleLoginModule">
15            <param name="anonymousId" value="anonymous" />
16        </LoginModule>
17    </Security>
18    <Workspaces rootPath="${rep.home}/workspaces" defaultWorkspace="liferay" />
19    <Workspace name="${wsp.name}">
20             <FileSystem class="org.apache.jackrabbit.core.fs.db.OracleFileSystem">
21                     <param name="driver" value="oracle.jdbc.driver.OracleDriver"/>
22                    <param name="url" value="jdbc:oracle:thin:@localhost:1521:test"/>
23                    <param name="user" value="test"/>
24                    <param name="password" value="test"/>
25                     <param name="schemaObjectPrefix" value="J_FS_${wsp.name}_"/>
26             </FileSystem>
27
28              <PersistenceManager      class="org.apache.jackrabbit.core.persistence.bundle.OraclePersistenceManager">
29                   <param name="driver" value="oracle.jdbc.driver.OracleDriver"/>
30                   <param name="url" value="jdbc:oracle:thin:@localhost:1521:test" />
31                   <param name="user" value="test"/>
32                   <param name="password" value="test"/>                  
33                   <param name="schemaObjectPrefix" value="J_PM_${wsp.name}_"/>
34                   <param name="externalBLOBs" value="false"/>
35              </PersistenceManager>
36
37    </Workspace>
38    <Versioning rootPath="${rep.home}/version">
39               <FileSystem class="org.apache.jackrabbit.core.fs.db.OracleFileSystem">
40            <param name="driver" value="oracle.jdbc.driver.OracleDriver"/>
41            <param name="url" value="jdbc:oracle:thin:@localhost:1521:test"/>
42            <param name="user" value="test"/>
43            <param name="password" value="test"/>
44            <param name="schemaObjectPrefix" value="J_V_FS_"/>
45              </FileSystem>
46
47         <PersistenceManager class="org.apache.jackrabbit.core.persistence.bundle.OraclePersistenceManager">
48                   <param name="url" value="jdbc:oracle:thin:@localhost:1521:test" />
49                   <param name="driver" value="oracle.jdbc.driver.OracleDriver"/>
50                   <param name="user" value="test"/>
51                   <param name="password" value="test"/>                  
52                   <param name="schemaObjectPrefix" value="J_V_PM_"/>
53                   <param name="externalBLOBs" value="false"/>
54               </PersistenceManager>
55    </Versioning>
56    <Cluster id="node_1" syncDelay="5">
57        <Journal class="org.apache.jackrabbit.core.journal.OracleDatabaseJournal">
58            <param name="revision" value="${rep.home}/revision"/>            
59            <param name="driver" value="oracle.jdbc.driver.OracleDriver"/>
60            <param name="url" value="jdbc:oracle:thin:@localhost:1521:test"/>
61            <param name="user" value="test"/>
62            <param name="password" value="test"/>
63        </Journal>
64    </Cluster>
65</Repository>


Has anybody had similar problems with Liferay 6.0 EE- update and Jackrabbit?

I have also tried updating straight from 5.1.4 => 6.0 and then I get:


Caused by: org.apache.jackrabbit.core.cluster.ClusterException: Cluster initialization failed: org.apache.jackrabbit.core.cluster.ClusterNode@9d13b8
at org.apache.jackrabbit.core.cluster.ClusterNode.init(ClusterNode.java:209)
at org.apache.jackrabbit.core.cluster.ClusterNode.init(ClusterNode.java:190)
at org.apache.jackrabbit.core.RepositoryImpl.createClusterNode(RepositoryImpl.java:724)
... 72 more
Caused by: javax.jcr.RepositoryException: Journal initialization failed: org.apache.jackrabbit.core.journal.OracleDatabaseJournal@24b7c5
at org.apache.jackrabbit.core.config.RepositoryConfigurationParser$3.getJournal(RepositoryConfigurationParser.java:891)
at org.apache.jackrabbit.core.config.ClusterConfig.getJournal(ClusterConfig.java:86)
at org.apache.jackrabbit.core.cluster.ClusterNode.init(ClusterNode.java:204)
... 74 more
Caused by: org.apache.jackrabbit.core.journal.JournalException: Unable to create connection.
at org.apache.jackrabbit.core.journal.DatabaseJournal.init(DatabaseJournal.java:277)
at org.apache.jackrabbit.core.config.RepositoryConfigurationParser$3.getJournal(RepositoryConfigurationParser.java:888)
... 76 more
Caused by: java.sql.SQLException: ORA-00902: invalid datatype
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)

This also seems to be related to Jackrabbit... :-(
Jaakko Yli-Koivisto
RE: Liferay 5.1.4 EE update to 6.0 EE SP1 problem
March 9, 2011 1:12 AM
Answer

Jaakko Yli-Koivisto

Rank: New Member

Posts: 4

Join Date: December 1, 2008

Recent Posts

Just verified that this happens even using a fresh 5.2 SP5 update to 6.0 SP1 with a clean database. (Using Jackrabbit with Oracle 11g)

But if I use Jackrabbit with MySQL then the update is ok so this must be an Oracle & Jackrabbit issue...
John Stamatis
RE: Liferay 5.1.4 EE update to 6.0 EE SP1 problem
February 7, 2012 2:41 AM
Answer

John Stamatis

Rank: New Member

Posts: 2

Join Date: August 25, 2010

Recent Posts

I have the same problem while upgrading 5.2.3CE to 6.0EE SP2.
Did you find a solution for this problem ???

Thanks
Jaakko Yli-Koivisto
RE: Liferay 5.1.4 EE update to 6.0 EE SP1 problem
May 3, 2012 1:10 AM
Answer

Jaakko Yli-Koivisto

Rank: New Member

Posts: 4

Join Date: December 1, 2008

Recent Posts

John Stamatis:
I have the same problem while upgrading 5.2.3CE to 6.0EE SP2.
Did you find a solution for this problem ???

Thanks


Hi! Sorry for the late answer but the solution here for me was to migrate all the documents to disk (using AdvancedFileSystemHook) before the actual update...