[infinispan-issues] [JBoss JIRA] (ISPN-7322) Improve triangle algorithm: ordering by segment

Bela Ban (JIRA) issues at jboss.org
Thu Dec 22 03:38:00 EST 2016


    [ https://issues.jboss.org/browse/ISPN-7322?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13341474#comment-13341474 ] 

Bela Ban commented on ISPN-7322:
--------------------------------

While this may temporarily fix the perf regression, I don't like adding OOB messages again, as they cause increased thread creation in the thread pool.

Let's revisit this decision again when switching from MessageDispatcher to JChannel and using _message batches_ (MessageBatch). In TriCache, I use a separate thread pool (of 1) to apply received BACKUPs and performance is excellent.

> 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
>
> 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.



--
This message was sent by Atlassian JIRA
(v7.2.3#72005)


More information about the infinispan-issues mailing list