users@glassfish.java.net

In-memory replication not working in multi-node configuration

From: <glassfish_at_javadesktop.org>
Date: Wed, 27 May 2009 07:12:33 PDT

Dear all,

as others before I have tried to get in-memory replication up and running in Glassfish 2.1 and failed miserably. Everything works with two instances on the same node but with multiple nodes new sessions are spawned on every access. I've tried various Glassfish 9.1.1 versions and nightly builds including build b13c-fcs, b60e-fcs and b16-fcs.

I am behind an apache 2.2 reverse proxy with the following LB configuration:

<Proxy balancer://myCluster>
  BalancerMember http://machine1:38080/
  BalancerMember http://machine1:38081/
  BalancerMember http://machine2:38080/
</Proxy>

<Location clusterjsp>
  ProxyPass balancer://myCluster/clusterjsp stickysession=JSESSIONID
  ProxyPassReverse balancer://myCluster/clusterjsp
</Location>

What I can see from the node-agent logs is that there seems to be a JXTA issue:

[#|2009-05-26T12:12:52.500+0200|INFO|sun-appserver2.1|javax.enterprise.system.co
ntainer.web|_ThreadID=10;_ThreadName=main;/clusterjsp;replicated;web-method;sess
ion;|WEB0130: Enabling ha-based persistence for web module [/clusterjsp]'s sessi
ons: persistence-type = [replicated] / persistenceFrequency = [web-method] / per
sistenceScope = [session]|#]

[#|2009-05-26T12:13:02.751+0200|WARNING|sun-appserver2.1|javax.enterprise.system
.container.web|_ThreadID=17;_ThreadName=Thread-29;_RequestID=9fa8e4ee-1ebc-4415-
b94a-ba3c2a47fce7;|ReplicationHealthChecker:replication health now ok: currentPa
rtner: spi-instance-vfuh02lz10|#]

[#|2009-05-26T12:13:02.755+0200|INFO|sun-appserver2.1|com.sun.enterprise.ee.web.
sessmgmt.pipe|_ThreadID=17;_ThreadName=Thread-29;|bound pipes: 5 brokenClosedPip
es:0 pipepool.size=5 total pipes:5|#]

[#|2009-05-26T12:13:08.870+0200|INFO|sun-appserver2.1|com.sun.enterprise.ee.web.
sessmgmt.pipe|_ThreadID=10;_ThreadName=main;|JxtaSenderPipeManager::pipePoolCount decremented = 4|#]

[#|2009-05-26T12:13:09.880+0200|INFO|sun-appserver2.1|com.sun.enterprise.ee.web.
sessmgmt.pipe|_ThreadID=10;_ThreadName=main;|JxtaSenderPipeManager::pipePoolCount decremented = 3|#]

[#|2009-05-26T12:13:10.890+0200|INFO|sun-appserver2.1|com.sun.enterprise.ee.web.
sessmgmt.pipe|_ThreadID=10;_ThreadName=main;|JxtaSenderPipeManager::pipePoolCount decremented = 2|#]

[#|2009-05-26T12:13:11.900+0200|INFO|sun-appserver2.1|com.sun.enterprise.ee.web.
sessmgmt.pipe|_ThreadID=10;_ThreadName=main;|JxtaSenderPipeManager::pipePoolCount decremented = 1|#]

[#|2009-05-26T12:13:12.910+0200|INFO|sun-appserver2.1|com.sun.enterprise.ee.web.
sessmgmt.pipe|_ThreadID=10;_ThreadName=main;|JxtaSenderPipeManager::pipePoolCount decremented = 0|#]

[#|2009-05-26T12:13:12.911+0200|WARNING|sun-appserver2.1|javax.enterprise.system
.container.web|_ThreadID=10;_ThreadName=main;_RequestID=269493f9-78a4-4417-a208-
c248ddd01946;|Out of pipes in JxtaReplicationSender pipepool. Disabling replication.|#]


Multicast, cluster deployment, synchronization all work in multi-node cluster but not session replication. I'm completely lost on where to look next and really need help!

Cheers
 Mobi.
[Message sent by forum member 'mobiwan' (mobiwan)]

http://forums.java.net/jive/thread.jspa?messageID=347871