4 Replies Latest reply on Sep 26, 2008 3:47 PM by prabhat.jha

    Portal clustering problem, a JBoss cache issue??

    michaelchan

      I get the following exception when clustering jboss portal on two nodes: I only extract first few lines of each exception here. Could someone please help me solve this? I suspected that it is a JBoss Cache configuration issue.


      09:55:53,804 WARN [arjLoggerI18N] [com.arjuna.ats.arjuna.coordinator.TwoPhaseCoordinator_2] TwoPhaseCoordinator.beforeCompletion - failed for com.arjuna.ats.internal.jta.resources.arjunacore.SynchronizationImple@503e4b
      java.lang.RuntimeException:



      Caused by: org.jboss.cache.lock.TimeoutException: failure acquiring lock: fqn=/, caller=GlobalTransaction:<10.0.0.98:34750>:47748, lock=write owner=GlobalTransaction:<10.0.0.98:34750>:47746 (activeReaders=0, activeWriter=Thread[ajp-10.0.0.98-8009-19,5,jboss], waitingReaders=0, waitingWriters=0, waitingUpgrader=0)
      at org.jboss.cache.Node.acquire(Node.java:500)



      Caused by: org.jboss.cache.lock.TimeoutException: write lock for / could not be acquired after 15000 ms. Locks: Read lock owners: []
      Write lock owner: GlobalTransaction:<10.0.0.98:34750>:47746
      (caller=GlobalTransaction:<10.0.0.98:34750>:47748, lock info: write owner=GlobalTransaction:<10.0.0.98:34750>:47746 (activeReaders=0, activeWriter=Thread[ajp-10.0.0.98-8009-19,5,jboss], waitingReaders=0, waitingWriters=0, waitingUpgrader=0))
      at org.jboss.cache.lock.IdentityLock.acquireWriteLock(IdentityLock.java:206)
      at org.jboss.cache.Node.acquireWriteLock(Node.java:529)
      at org.jboss.cache.Node.acquire(Node.java:476)


      09:55:53,807 WARN [TreeCache] replication failure with method_call optimisticPrepare; id:18(GlobalTransaction:<10.0.0.103:34547>:15349, [_put; id:38(GlobalTransaction:<10.0.0.103:34547>:15349, /org/jboss/portal/core/impl/model/portal/ObjectNodeSecurityConstraint/actions/org.jboss.portal.core.impl.model.portal.ObjectNodeSecurityConstraint.actions#1059, item, CollectionCacheEntry[viewrecursive], true, org.hibernate.cache.OptimisticTreeCache$NonLockingDataVersion@1fe76c6)], null, 10.0.0.103:34547, false) exception



      Caused by: org.jboss.cache.lock.TimeoutException: write lock for /org/jboss/portal/core/impl/model/portal/ObjectNodeSecurityConstraint/actions could not be acquired after 15000 ms. Locks: Read lock owners: []



      09:55:53,807 WARN [TxInterceptor] Rolling back, exception encountered
      javax.transaction.RollbackException: [com.arjuna.ats.internal.jta.transaction.arjunacore.commitwhenaborted] [com.arjuna.ats.internal.jta.transaction.arjunacore.commitwhenaborted] Can't commit because the transaction is in aborted state



      After some googling, i found the following:

      https://jira.jboss.org/jira/browse/JBCACHE-955

      http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4145333#4145333


      Looks like it is a bug that is related to jboss cache, is it possible to switch to other caching library for jboss portal? Could someone please give me some advice?


      And one more link suggesting that it is a bug with jboss cache

      https://jira.jboss.org/jira/browse/JBPORTAL-1626