[jboss-jira] [JBoss JIRA] (JGRP-2161) UNICAST3: message delivery fails after disconnect-connect sequence

Bela Ban (JIRA) issues at jboss.org
Wed Mar 1 12:12:00 EST 2017


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

Bela Ban commented on JGRP-2161:
--------------------------------

git bisect shows the offending commit to be {{509cfe}}; this is where {{message_processing_policy}} in the transport was set to "max" (from "submit") as default.

Changing this back to "max" fixes the issue.

The problem is that {{MaxOneThreadPerSender}} creates message batches for each sender's address in its table and uses the batches to queue messages when a message for a given sender is already being processed.

However, the dest and sender's address of those batches is not changed on a disconnect-connect sequence, which results in messages being sent to old UUIDs, which are discarded by the transport logic when comparing the destination address of a batch with the local address.

A simple solution is to remove entries from that table on a disconnect and on a view change (remove entries for left members).

> UNICAST3: message delivery fails after disconnect-connect sequence
> ------------------------------------------------------------------
>
>                 Key: JGRP-2161
>                 URL: https://issues.jboss.org/browse/JGRP-2161
>             Project: JGroups
>          Issue Type: Bug
>            Reporter: Bela Ban
>            Assignee: Bela Ban
>            Priority: Critical
>             Fix For: 4.1, 4.0.1
>
>
> When disconnecting and reconnecting a channel, unicast messages are not delivered. {{ConnectTest.testDisconnectConnectndMessageSending()}} reproduces the issue.



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


More information about the jboss-jira mailing list