I'm using a cluster with the DeltaManager between two servers on Tomcat 9.0.11. When I restart my "A" server, I sometimes see the error below. Peaking at the code in DeltaManager it appears that there is a problem in the serialized data stream when receiving all of the session data from the "B" server. Any ideas what could be causing this? It seems like that if there was something in a Session object that was not Serializable it would not even make it over the wire. Perhaps if something in a session did not serialize properly?

(From the code, it looks like all the sessions in the message after the error are lost, so this is kind of important.)

07-Sep-2018 16:09:53.220 SEVERE [Tribes-Task-Receiver[Catalina-Channel]-6] org.apache.catalina.ha.session.DeltaManager.deserializeSessions IOException while loading persisted sessions: [java.io.StreamCorruptedException: invalid type code: 00]
 java.io.StreamCorruptedException: invalid type code: 00
        at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1381)
        at java.io.ObjectInputStream.skipCustomData(ObjectInputStream.java:1984)
        at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1946)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1808)
        at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1353)
        at 
java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:2018)
        at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1942)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1808)
        at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1353)
        at java.io.ObjectInputStream.readObject(ObjectInputStream.java:373)
at org.apache.catalina.ha.session.DeltaSession.doReadObject(DeltaSession.java:748) at org.apache.catalina.ha.session.DeltaSession.readObjectData(DeltaSession.java:569) at org.apache.catalina.ha.session.DeltaManager.deserializeSessions(DeltaManager.java:613) at org.apache.catalina.ha.session.DeltaManager.handleALL_SESSION_DATA(DeltaManager.java:1323) at org.apache.catalina.ha.session.DeltaManager.messageReceived(DeltaManager.java:1162) at org.apache.catalina.ha.session.DeltaManager.messageDataReceived(DeltaManager.java:917) at org.apache.catalina.ha.session.ClusterSessionListener.messageReceived(ClusterSessionListener.java:77) at org.apache.catalina.ha.tcp.SimpleTcpCluster.messageReceived(SimpleTcpCluster.java:788) at org.apache.catalina.ha.tcp.SimpleTcpCluster.messageReceived(SimpleTcpCluster.java:771) at org.apache.catalina.tribes.group.GroupChannel.messageReceived(GroupChannel.java:324) at org.apache.catalina.tribes.group.ChannelInterceptorBase.messageReceived(ChannelInterceptorBase.java:91) at org.apache.catalina.tribes.group.interceptors.TcpPingInterceptor.messageReceived(TcpPingInterceptor.java:175) at org.apache.catalina.tribes.group.ChannelInterceptorBase.messageReceived(ChannelInterceptorBase.java:91) at org.apache.catalina.tribes.group.interceptors.TcpFailureDetector.messageReceived(TcpFailureDetector.java:116) at org.apache.catalina.tribes.group.ChannelInterceptorBase.messageReceived(ChannelInterceptorBase.java:91) at org.apache.catalina.tribes.group.interceptors.StaticMembershipInterceptor.messageReceived(StaticMembershipInterceptor.java:96) at org.apache.catalina.tribes.group.ChannelInterceptorBase.messageReceived(ChannelInterceptorBase.java:91) at org.apache.catalina.tribes.group.ChannelInterceptorBase.messageReceived(ChannelInterceptorBase.java:91) at org.apache.catalina.tribes.group.interceptors.ThroughputInterceptor.messageReceived(ThroughputInterceptor.java:86) at org.apache.catalina.tribes.group.ChannelInterceptorBase.messageReceived(ChannelInterceptorBase.java:91) at org.apache.catalina.tribes.group.ChannelInterceptorBase.messageReceived(ChannelInterceptorBase.java:91) at org.apache.catalina.tribes.group.ChannelCoordinator.messageReceived(ChannelCoordinator.java:274) at org.apache.catalina.tribes.transport.ReceiverBase.messageDataReceived(ReceiverBase.java:261) at org.apache.catalina.tribes.transport.nio.NioReplicationTask.drainChannel(NioReplicationTask.java:213) at org.apache.catalina.tribes.transport.nio.NioReplicationTask.run(NioReplicationTask.java:101) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:745)




--

Mitch

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
For additional commands, e-mail: users-h...@tomcat.apache.org

Reply via email to