6 Replies Latest reply: Sep 3, 2012 12:53 PM by Zdenek Henek RSS

FineGrainedAtomicMap missing key,value pairs in some cluster nodes in distributed mode, embedded infinispan cache

Zdenek Henek Newbie

I am using FineGrainedAtomicMap to store data into clustering distributed cache. When clustering set to replicated  doesn't cause any issues or at least I haven't run

into any. When I switch to distributed mode I don't see some key,value pairs in some nodes. This happens randomly. The numOwners is set to two and I have cluster of three nodes.

 

Details about cluster:

1. Infinispan 5.1.5

2. java 7u5 64bit

3. linux 64bit (two nodes debian and one node ubuntu)

4. tomcat 7.0.28

5. jbossTM 4.16.0 JTA only

Tomcat integration code is here:

https://github.com/zvrablik/tomcatInfinispanSessionManager/tree/master/tomcatJBossTM

6. all machines are on real hw ( no virtual machines), date and time is synchronized and shouldn't vary more than 1 second

 

I am sure all nodes have same configuration( I use git repository to keep all machines in sync ).

 

Config files and log files of all machines are attached with infinispan trace log level enabled. I have started tomcat and reproduced the issue a few times than I killed the processes.

 

Do I have wrong configuration? I read the attached ispn trace logs, only strange message I found was that the L1 cache is enabled

even when I have disabled L1 cache in config file.

 

Should I use only replication cache mode when using FGAM?

I saw that unit tests in ispn are only in REPL mode.

https://github.com/infinispan/infinispan/blob/master/core/src/test/java/org/infinispan/atomic/FineGrainedAtomicMapAPITest.java

 

All my code is here:

https://github.com/zvrablik/tomcatInfinispanSessionManager/tree/master/tomcatDistributedSessionManager/src/main/java/org/apache/catalina/session/infinispan

 

I have created unit tests and I was able to reproduce same issue there too.

https://github.com/zvrablik/tomcatInfinispanSessionManager/blob/master/tomcatDistributedSessionManager/src/test/java/org/apache/catalina/session/infinispan/InfinispanSessionManagerMultipleInstancesTest.java

 

I found simmilar error reported, but I use JBoss transaction manager and that issue was fixed.

https://docs.jboss.org/author/pages/viewpage.action?pageId=5832827

 

More about the application:

https://github.com/zvrablik/tomcatInfinispanSessionManager/tree/master/tomcatDistributedSessionManager is distributed session manager for Tomcat 7.

I would like to use sticky session mode than I don't need cache replication. There is created one cache manager per web application and one cache

for session data and metadata. Data and metadata are separated. There is one cache item for data (session attributes) and one session item for metadata

(session creation time etc. )

 

Thanks for any hint how to fix this.


Regards,
Zdenek