Treecache issue in Jboss Portal
venukb Feb 14, 2009 5:40 AMWe are using HA version of Jboss Portal 2.7.1 GA and we are running it on bunch (5-6) linux servers (which are on the same subnet)
Its deployed on JBoss 4.2.3.GA with JBoss WS 3.0.5 Native. Data sources for JBoss is MySQL and its the same for Portal (Both of them use a different database on the same host)
The JBoss servers are started with their own unique partition name (via -g argument) to ensure that no cluster is formed.
Even then we observe that the Portal Tree cache for some reasons gets a view which is different from what JBoss gets. for any changes done, the system tries to replicate the same on another node and ends up with the following exceptions
(I am avoiding putting the entire stack trace)
2009-02-14 15:03:17,048 WARN [com.arjuna.ats.arjuna.logging.arjLoggerI18N] [com.arjuna.ats.arjuna.coordinator.TwoPhaseCoordinator_2] TwoPhaseCoordinator.beforeCompletion - failed for com.arjuna.ats.internal.jta.resources.arjunacore.SynchronizationImple@e91a08
java.lang.RuntimeException: at org.jboss.cache.interceptors.TxInterceptor$LocalSynchronizationHandler.beforeCompletion(TxInterceptor.java:1196) at org.jboss.cache.interceptors.OrderedSynchronizationHandler.beforeCompletion(OrderedSynchronizationHandler.java:75) at com.arjuna.ats.internal.jta.resources.arjunacore.SynchronizationImple.beforeCompletion(SynchronizationImple.java:114) at com.arjuna.ats.arjuna.coordinator.TwoPhaseCoordinator.beforeCompletion(TwoPhaseCoordinator.java:247) at com.arjuna.ats.arjuna.coordinator.TwoPhaseCoordinator.end(TwoPhaseCoordinator.java:86) at com.arjuna.ats.arjuna.AtomicAction.commit(AtomicAction.java:177)
Caused by: org.jboss.cache.ReplicationException: rsp=sender=10.34.6.77:35980, retval=null, received=false, suspected=false
at org.jboss.cache.TreeCache.callRemoteMethods(TreeCache.java:4449)
at org.jboss.cache.TreeCache.callRemoteMethods(TreeCache.java:4371)
at org.jboss.cache.TreeCache.callRemoteMethods(TreeCache.java:4489)
at org.jboss.cache.interceptors.BaseRpcInterceptor.replicateCall(BaseRpcInterceptor.java:110)
at org.jboss.cache.interceptors.BaseRpcInterceptor.replicateCall(BaseRpcInterceptor.java:88)
at org.jboss.cache.interceptors.OptimisticReplicationInterceptor.broadcastPrepare(OptimisticReplicationInterceptor.java:181)
at org.jboss.cache.interceptors.OptimisticReplicationInterceptor.invoke(OptimisticReplicationInterceptor.java:90)
at org.jboss.cache.interceptors.Interceptor.invoke(Interceptor.java:68)
at org.jboss.cache.interceptors.TxInterceptor.runPreparePhase(TxInterceptor.java:887)
at org.jboss.cache.interceptors.TxInterceptor$LocalSynchronizationHandler.beforeCompletion(TxInterceptor.java:1170)
The sender here i.e. 10.34.6.77 is not part of any JBoss cluster, yet portal tries to replicate some data
Is this a bug or a feature? Can I fix this by modifying Portal Tree Cache MBean/Cluster Configuration (jboss-portal-ha.sar/META-INF/jboss-service.xml)?
Please advise.
-- Venu