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]

Reply via email to