Hi Radim,
The performance regression introduced with ISPN-2772 is caused by the fact that the new
replication mechanism in 5.3 is now using lock delegation[1].
This allows for multiple writes to happen concurrently: both guarantees consistency when
there are no failures and avoids deadlocks. Support for concurrent writes comes at the
cost of an additional (delegating) RPC per request - hence the drop in performance.
So we're not really comparing apples with apples here. Also a transactional cache
configured with 1PcForAutoCommitTransaction=true, which is functionally equivalent with
5.2.x's replication, has the same number of RPCs and consequently I expect pretty
similar performance with the repl from 5.2.x. Can you please compare these two? If I'm
right then we can recommend all the users that don't need concurrent writes to use tx
+ 1PcForAutoCommitTransaction=true. If I'm not we should provide a backward compatible
layer for the sake of performance.
[1]
https://docs.jboss.org/author/display/ISPN/Locking+and+Concurrency#Lockin...
Cheers,
--
Mircea Markus
Infinispan lead (
www.infinispan.org)