]
Dan Berindei updated ISPN-7322:
-------------------------------
Status: Resolved (was: Pull Request Sent)
Fix Version/s: 9.0.0.Beta2
Resolution: Done
Improve triangle algorithm: ordering by segment
-----------------------------------------------
Key: ISPN-7322
URL:
https://issues.jboss.org/browse/ISPN-7322
Project: Infinispan
Issue Type: Enhancement
Components: Core
Reporter: Pedro Ruivo
Assignee: Pedro Ruivo
Fix For: 9.0.0.Beta2
Current triangle algorithm uses regular message (FIFO ordered) between the primary owner
and backup owners of a key. While it ensures that the backup owners receives the stream of
updates in the same order, it makes everything slower since it doesn't allow different
keys to be handled in parallel.
"Triangle unordered" solves this problem by sending OOB messages (not ordered)
between the primary and backup. To keep the consistency, Infinispan introduces the
TriangleOrderManager that orders the updates based on the segment of the key.
While it is not as perfect as ordering per key, the segments are static; this removes the
complexity and avoids handling the cluster topology changes and key adding/removal while
improves the performance.