[jboss-user] [Clustering] - jboss clustering-fault tolerance errors
ankit.thakkar
do-not-reply at jboss.com
Fri Nov 20 08:03:17 EST 2009
Dear All,
We have configured Jboss Clustering + Session Replication. But we are facing certain issues as below.
Expected Scenario,
User1 connects to node1 -> Login Successful -> User1 is working for Functionality X -> node1 down
As node1 is down, node2 should take care for connected User1 from Functionality X.
Actual Scenario/Query,
When we shut down node1, Application logs out from Functionality X, then connects to node2 with Login Page of Application.
Please find below configuration we used for your reference,
Mod_JK
JBOSS_HOME/server/all/deploy/jboss-web.deployer/server.xml
server/all/deploy/jboss-web.deployer/META-INF/jboss-service.xml : UseJK = true
Exception coming in logger .
2009-11-17 13:05:50,369 INFO [org.jboss.web.tomcat.service.session.CacheListener] Possible concurrency problem: Replicated version id 1 matches in-memory version for session zs0jyaG4z-4sgTaEOIEvuA**
2009-11-17 13:05:50,641 DEBUG [org.jboss.cache.interceptors.TxInterceptor] local transaction exists - registering global tx if not present for Thread[ajp-172.26.137.20-8009-1,5,jboss]
2009-11-17 13:05:50,674 DEBUG [org.jboss.cache.interceptors.TxInterceptor] Running commit phase. One phase? false
2009-11-17 13:05:50,674 DEBUG [org.jboss.cache.interceptors.TxInterceptor] Finished local commit/rollback method for GlobalTransaction:<172.26.137.20:56688>:1
2009-11-17 13:05:50,674 DEBUG [org.jboss.cache.interceptors.TxInterceptor] Finished commit phase
2009-11-17 13:05:50,674 DEBUG [org.jboss.web.tomcat.service.session.JBossCacheManager] loadSession(): id= zs0jyaG4z-4sgTaEOIEvuA**, session=SessionBasedClusteredSession[id: zs0jyaG4z-4sgTaEOIEvuA**.node2 lastAccessedTime: 1258463150496 version: 2 lastOutdated: 0]
2009-11-17 13:05:50,674 DEBUG [org.jboss.web.tomcat.service.session.JvmRouteValve] checkJvmRoute(): check if need to re-route based on JvmRoute. Session id: zs0jyaG4z-4sgTaEOIEvuA**.node2 jvmRoute: node1
2009-11-17 13:05:50,675 DEBUG [org.jboss.web.tomcat.service.session.JvmRouteValve] handleJvmRoute(): We have detected a failover with different jvmRoute. old one: node2 new one: node1. Will reset the session id.
2009-11-17 13:05:50,675 DEBUG [org.jboss.web.tomcat.service.session.JvmRouteValve] resetSessionId(): changed catalina session to= [zs0jyaG4z-4sgTaEOIEvuA**.node1] old one= [zs0jyaG4z-4sgTaEOIEvuA**.node2]
2009-11-17 13:05:50,675 DEBUG [org.jboss.web.tomcat.service.session.JBossCacheManager] Setting cookie with session id:zs0jyaG4z-4sgTaEOIEvuA**.node1 & name:JSESSIONID
2009-11-17 13:44:29,185 DEBUG [org.jboss.web.tomcat.service.session.JvmRouteValve] checkJvmRoute(): check if need to re-route based on JvmRoute. Session id: Jp0uZF+NeeE4NdgdGeemcw**.node1 jvmRoute: node1
2009-11-17 13:44:29,206 ERROR [org.jboss.web.tomcat.service.session.JBossCacheService] externalizeSession(): exception occurred externalizing session SessionBasedClusteredSession[id: Jp0uZF+NeeE4NdgdGeemcw**.node1 lastAccessedTime: 1258465468376 version: 49 lastOutdated: 0]
java.io.NotSerializableException: com.icesoft.faces.component.datapaginator.DataPaginator
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1081)
at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1375)
at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1347)
at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1290)
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1079)
at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:302)
at java.util.concurrent.ConcurrentHashMap.writeObject(ConcurrentHashMap.java:1380)
at sun.reflect.GeneratedMethodAccessor316.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:917)
at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1339)
at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1290)
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1079)
at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:302)
at org.jboss.web.tomcat.service.session.SessionBasedClusteredSession.writeExternal(SessionBasedClusteredSession.java:175)
at org.jboss.web.tomcat.service.session.JBossCacheService.externalizeSession(JBossCacheService.java:1033)
at org.jboss.web.tomcat.service.session.JBossCacheService.putSession(JBossCacheService.java:322)
at org.jboss.web.tomcat.service.session.JBossCacheClusteredSession.processSessionRepl(JBossCacheClusteredSession.java:123)
at org.jboss.web.tomcat.service.session.JBossCacheManager.processSessionRepl(JBossCacheManager.java:1127)
at org.jboss.web.tomcat.service.session.JBossCacheManager.storeSession(JBossCacheManager.java:682)
at org.jboss.web.tomcat.service.session.InstantSnapshotManager.snapshot(InstantSnapshotManager.java:49)
at org.jboss.web.tomcat.service.session.ClusteredSessionValve.invoke(ClusteredSessionValve.java:108)
at org.jboss.web.tomcat.service.session.JvmRouteValve.invoke(JvmRouteValve.java:84)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:432)
at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:262)
at org.apache.coyote.ajp.AjpProcessor.process(AjpProcessor.java:437)
at org.apache.coyote.ajp.AjpProtocol$AjpConnectionHandler.process(AjpProtocol.java:366)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:446)
at java.lang.Thread.run(Thread.java:595)
when session replication is happening, is it necessary to serialize all objects which have been stored in Session ?
Thanks ,
View the original post : http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4266749#4266749
Reply to the post : http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=4266749
More information about the jboss-user
mailing list