Hi there, I have a problem with a clustering configuration. I am using tomcat-5.5.23 on FreeBSD 6.2 OS and java 1.5.0.
My problem is that the session content seems to not be replicated in some situations (when it should be). I will try to describe my situation with an example. I have tomcatA and tomcatB. Let's say that my first site access is served by tomcatA. In this moment tomcatA send a message to tomcatB using a local port. That work just fine. tomcatA (54334) -> tomcatB(4001) After first access, when I want to login myself into admin area the following is happening. TomcatA send the modified session content to tomcatB using the same socket (and channel) that has been first established (my keepAliveTimeout =-1). tomcatA (54334) -> tomcatB(4001) >From tomcatA logs I can see that the message has been sent (at least the thread seems to wait after ACK message), but here is the problem ... I cannot see any logs that show me the message as being arrived on the tomcatB server. So after a timeout of 35 seconds(SocketTimeoutException) the tomcatA close the existing socket and open a new one and send the message again waiting again for an ACK ... This new request seems to get into tomcatB but only partial ... After more digging into source code I could see that tomcatA try to send one message of 2200 bytes and tomcatB does receive only 1448 bytes. So because the packet is not complete tomcatB will not send any ACK message back so I get again the same SocketTimeoutException. What seems to be very interesting is that the tomcatB server receive from that socket all the time 1448 bytes no matter how many bytes does tomcatA send My cluster configuration is <Cluster className="org.apache.catalina.cluster.tcp.SimpleTcpCluster" managerClassName="org.apache.catalina.cluster.session.DeltaManager" manager.expireSessionsOnShutdown="false" manager.notifyListenersOnReplication="true" manager.notifySessionListenersOnReplication="true" manager.sendAllSessions="false" useDirtyFlag="true" doClusterLog="true" clusterLogName="clusterlog"> <Membership className="org.apache.catalina.cluster.mcast.McastService" mcastAddr="228.0.0.4" mcastPort="45564" mcastTTL="1" mcastFrequency="500" mcastDropTime="3000"/> <Receiver className="org.apache.catalina.cluster.tcp.ReplicationListener" tcpListenAddress="auto" tcpListenPort="4001" tcpSelectorTimeout="100" tcpThreadCount="8" /> <Sender className="org.apache.catalina.cluster.tcp.ReplicationTransmitter" replicationMode="fastasyncqueue" ackTimeout="35000" resend="true" autoConnect="true" waitForAck="true" keepAliveTimeout="-1" keepAliveMaxRequestCount="-1"/> <Valve className="org.apache.catalina.cluster.tcp.ReplicationValve" filter=".*\.swf;.*\.gif;.*\.js;.*\.jpg;.*\.png;.*\.htm;.*\.html;.*\.css;.*\.txt;" primaryIndicator="true"/> <Valve className="org.apache.catalina.cluster.session.JvmRouteBinderValve" enabled="true" sessionIdAttribute="takeoverSessionid"/> <ClusterListener className="org.apache.catalina.cluster.session.JvmRouteSessionIDBinderListener" /> <ClusterListener className="org.apache.catalina.cluster.session.ClusterSessionListener"/> </Cluster> So, I was wondering if I am missing something from my configuration or is something that I did not see it. Any idea would be much appreciated. Thank you very much Calin -- View this message in context: http://www.nabble.com/Cluster-problem-tp15952055p15952055.html Sent from the Tomcat - User mailing list archive at Nabble.com. --------------------------------------------------------------------- To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]