Yeah, not all nodes have all keys, so a tx might involve k1 and k2 which are in a subset of the cluster, hence prepares/commits will only involve that subset.
In my case i have all replicated caches(mode = replication). Shoudnt it match in this case ?
Ah sorry, I had misunderstood your original post and thought you were using distribution (partial replication) as opposed to (total) replication.
Hmmm, in theory, the number of commits, rollbacks and prepares should be the same in all nodes.
Is your cluster mode asynchronous or synchronous?
What's the transaction configuration you have?
Are you seeing any exceptions?
What version of Infinispan? If not using 5.1.0.CR1, can you try with this version?
Sudheer is away at the moment, but I am working with him on this so I will try and answer your questions.
Our cluster mode is asynchronous.
Our transaction configuration is:
<transaction transactionManagerLookupClass="com.tspex.cache.infinispan.TransactionManagerLookUp" syncRollbackPhase="false" syncCommitPhase="false" useEagerLocking="false" />
I haven't seen any Exceptions in the logs.
We are currently using version 5.0.0, but we will give 5.0.1.CR1 a shot and see if that makes any difference.
Remember that we've just released 5.1.0.CR2, so please try with that.
Can you attach source code for com.tspex.cache.infinispan.TransactionManagerLookUp?
Finally, it'd be interesting to get TRACE logs for org.infinispan category from all nodes if the issue is still present.