[jboss-jira] [JBoss JIRA] (JGRP-2406) MERGE3 not working with TCP using ForkJoinPool

Olivier Peyrusse (Jira) issues at jboss.org
Wed Nov 20 06:05:00 EST 2019


Olivier Peyrusse created JGRP-2406:
--------------------------------------

             Summary: MERGE3 not working with TCP using ForkJoinPool
                 Key: JGRP-2406
                 URL: https://issues.jboss.org/browse/JGRP-2406
             Project: JGroups
          Issue Type: Bug
    Affects Versions: 4.1.8
            Reporter: Olivier Peyrusse
            Assignee: Bela Ban
         Attachments: logs.tgz, project.zip, timeline.txt

Using the TCP protocol with the ForkJoinPool is causing constant failures of MERGE3.

I consistently observed the following, from the point of view of a member M
 - M asks for other coordinator views. It contacts A and B
 - A and B send their views
 - M waits and timeouts for receiving views and abort the merge
 - immediately after aborting the merge, M process messages containing the views of A and B.

In  [^timeline.txt], you will see the extracts for logs from the various members at play.

After many experiments, the one parameter causing this issue is in the TCP protocol.
{code:xml}
<TCP
   ...
   thread_pool.use_fork_join_pool="true" />
{code}
Setting {{thread_pool.use_fork_join_pool}} to true repeatedly produces the problem, while using {{thread_pool.use_fork_join_pool}} with false works fine.

Project details: 
 - as tested within Kubernetes, this project uses KUBE_PING as its discovery protocol
 - to understand the reason for the failed merges, I created the protocol MERGE4, that is MERGE3 with additional logs.
 -  [^logs.tgz] contains all logs from the various members involved in the test.



--
This message was sent by Atlassian Jira
(v7.13.8#713008)


More information about the jboss-jira mailing list