Hi folks,
My sessions are replicating across the cluster as indicated by my session 
listener debug output.  E.g I can see the session created/destroyed messages in 
each respective log.
I have a Service object that is serializable, which contains a String member 
variable (x) which is not initialized; null.  As my load balancer round-robins 
the requests to each of these servers, each successfully retrieves the service 
instance from the session.  Now, when service.x is set at some point in the 
workflow, I expect the other members to receive this updated object since it 
resides in the session.  However, I'm finding that it is not, it remains null 
in all other containers.

The tomcat config (http://tomcat.apache.org/tomcat-6.0-doc/cluster-howto.html) 
says that "..For each request the entire session is replicated, this allows 
code that modifies attributes in the session without calling setAttribute or 
removeAttribute to be replicated."

Can someone clarify whether I do in fact need to reset the service object on 
the session in order for it to replicate?

Thanks!

<Engine name="Catalina" defaultHost="localhost" jvmRoute="id2">
        <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"
                 channelSendOptions="6">

          <Manager className="org.apache.catalina.ha.session.DeltaManager"
                   expireSessionsOnShutdown="false"
                   notifyListenersOnReplication="true"/>

          <Channel className="org.apache.catalina.tribes.group.GroupChannel">
          <Membership 
className="org.apache.catalina.tribes.membership.McastService"
                   address="231.10.12.6"
                   port="35006"
                   frequency="500"
                   dropTime="3000"/>
          <Receiver 
className="org.apache.catalina.tribes.transport.nio.NioReceiver"
                   address="auto"
                   port="8117"
                   selectorTimeout="100"
                   maxThreads="6"/>

            <Sender 
className="org.apache.catalina.tribes.transport.ReplicationTransmitter">
              <Transport 
className="org.apache.catalina.tribes.transport.nio.PooledParallelSender"/>
            </Sender>
            <Interceptor 
className="org.apache.catalina.tribes.group.interceptors.TcpFailureDetector"/>
            <Interceptor 
className="org.apache.catalina.tribes.group.interceptors.MessageDispatch15Interceptor"/>
            <Interceptor 
className="org.apache.catalina.tribes.group.interceptors.ThroughputInterceptor"/>
          </Channel>

          <Valve className="org.apache.catalina.ha.tcp.ReplicationValve"
                 
filter=".*\.gif;.*\.js;.*\.jpg;.*\.png;.*\.htm;.*\.html;.*\.css;.*\.txt;"/>
          <ClusterListener 
className="org.apache.catalina.ha.session.ClusterSessionListener"/>
        </Cluster>

Reply via email to