I am having some problems with clustering (version 5.0.27) and session replication at startup across multiple servers. I can replicate in normal conditions, but introducting servers to the cluster after a period of time causes "Unable to send replicated message". This error only seems to occur when you have more than 50 sessions stored (session size = 50k). I've read some documents regarding the NTPL thread library which i have tried to no avail, has anyone else had a similar problem, or have any advise on the issue ?
Here is a list of some important settings, i've tried to keep most of them default. Redhat ES3 using JDK 1.4.2_05 with LD_ASSUME_KERNEL=2.4.0 <Cluster className="org.apache.catalina.cluster.tcp.SimpleTcpCluster" expireSessionsOnShutdown="false" useDirtyFlag="true" printSessionInfo="true" tcpKeepAliveTime="0"> synchronousReplication="true"> <Membership mcastFrequency="500" mcastDropTime="10000"/> <Receiver tcpSelectorTimeout="100" tcpThreadCount="2"/> Errors (ip addresses masked) Aug 24, 2004 11:25:00 AM org.apache.catalina.cluster.session.DeltaManager start INFO: Starting clustering manager...:/webapp Aug 24, 2004 11:25:15 AM org.apache.catalina.cluster.tcp.SocketSender waitForAck WARNING: Wasn't able to read acknowledgement from server[/*.*.*.*:4001] in 15000 ms. Disconnecting socket, and trying again. Aug 24, 2004 11:25:30 AM org.apache.catalina.cluster.tcp.SocketSender waitForAck WARNING: Wasn't able to read acknowledgement from server[/*.*.*.*:4001] in 15000 ms. Disconnecting socket, and trying again. Aug 24, 2004 11:25:30 AM org.apache.catalina.cluster.tcp.ReplicationTransmitter sendMessageData WARNING: Unable to send replicated message, is server down? java.net.SocketTimeoutException: Read timed out at java.net.SocketInputStream.socketRead0(Native Method) at java.net.SocketInputStream.read(SocketInputStream.java:129) at java.net.SocketInputStream.read(SocketInputStream.java:182) at org.apache.catalina.cluster.tcp.SocketSender.waitForAck(SocketSender.java:13 4) at org.apache.catalina.cluster.tcp.SocketSender.sendMessage(SocketSender.java:1 25) at org.apache.catalina.cluster.tcp.PooledSocketSender.sendMessage(PooledSocketS ender.java:119) at org.apache.catalina.cluster.tcp.ReplicationTransmitter.sendMessageData(Repli cationTransmitter.java:117) at org.apache.catalina.cluster.tcp.ReplicationTransmitter.sendMessage(Replicati onTransmitter.java:136) at org.apache.catalina.cluster.tcp.SimpleTcpCluster.send(SimpleTcpCluster.java: 457) at org.apache.catalina.cluster.session.DeltaManager.start(DeltaManager.java:648 ) at org.apache.catalina.core.ContainerBase.setManager(ContainerBase.java:499) at org.apache.catalina.startup.ContextConfig.managerConfig(ContextConfig.java:3 08) at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:635) at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java: 216) at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSuppor t.java:119) at org.apache.catalina.core.StandardContext.start(StandardContext.java:4290) at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:8 23) at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:807) at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:595) at org.apache.catalina.core.StandardHostDeployer.addChild(StandardHostDeployer. java:903) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39 ) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl .java:25) at java.lang.reflect.Method.invoke(Method.java:324) at org.apache.commons.beanutils.MethodUtils.invokeMethod(MethodUtils.java:252) at org.apache.commons.digester.SetNextRule.end(SetNextRule.java:256) at org.apache.commons.digester.Rule.end(Rule.java:276) at org.apache.commons.digester.Digester.endElement(Digester.java:1058) at org.apache.catalina.util.CatalinaDigester.endElement(CatalinaDigester.java:7 6) at org.apache.xerces.parsers.AbstractSAXParser.endElement(Unknown Source) at org.apache.xerces.parsers.AbstractXMLDocumentParser.emptyElement(Unknown Source) at org.apache.xerces.impl.dtd.XMLDTDValidator.emptyElement(Unknown Source) at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanStartElement(Unkno wn Source) at org.apache.xerces.impl.XMLDocumentScannerImpl$ContentDispatcher.scanRootElem entHook(Unknown Source) at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatc her.dispatch(Unknown Source) at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source) at org.apache.xerces.parsers.DTDConfiguration.parse(Unknown Source) at org.apache.xerces.parsers.DTDConfiguration.parse(Unknown Source) at org.apache.xerces.parsers.XMLParser.parse(Unknown Source) at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source) at org.apache.commons.digester.Digester.parse(Digester.java:1567) at org.apache.catalina.core.StandardHostDeployer.install(StandardHostDeployer.j ava:488) at org.apache.catalina.core.StandardHost.install(StandardHost.java:863) at org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:482 ) at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:427) at org.apache.catalina.startup.HostConfig.start(HostConfig.java:968) at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:349) at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSuppor t.java:119) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1091) at org.apache.catalina.core.StandardHost.start(StandardHost.java:789) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1083) at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:478) at org.apache.catalina.core.StandardService.start(StandardService.java:480) at org.apache.catalina.core.StandardServer.start(StandardServer.java:2313) at org.apache.catalina.startup.Catalina.start(Catalina.java:556) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39 ) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl .java:25) at java.lang.reflect.Method.invoke(Method.java:324) at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:284) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:422) Aug 24, 2004 11:25:30 AM org.apache.catalina.cluster.session.DeltaManager start WARNING: Manager[/webapp], requesting session state from org.apache.catalina.cluster.mcast.McastMember[tcp://*.*.*.*:4001,*.*.*.*,400 1, alive=3211070]. This operation will timeout if no session state has been received within 60 seconds -------------------------------------- Andy Natt. DigitalRum Ltd