[jboss-jira] [JBoss JIRA] Commented: (JGRP-1098) NAKACK: retransmitted OOB messages are retransmitted as regular messages

Bela Ban (JIRA) jira-events at lists.jboss.org
Fri Nov 13 10:33:05 EST 2009


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

Bela Ban commented on JGRP-1098:
--------------------------------

No, we cannot always retransmit multicast messages as multicasts, because the transport might be TCP ! We could (later) check if the transport is multicast enabled, and if so, do this anyway, but that's something for a later release.

SOLUTION adopted: if the wrapped message is OOB, we also set the OOB flag in the *wrapping* message

> NAKACK: retransmitted OOB messages are retransmitted as regular messages
> ------------------------------------------------------------------------
>
>                 Key: JGRP-1098
>                 URL: https://jira.jboss.org/jira/browse/JGRP-1098
>             Project: JGroups
>          Issue Type: Bug
>            Reporter: Bela Ban
>            Assignee: Bela Ban
>             Fix For: 2.8
>
>
> If P sends OOB messages 1-10, and Q only receives 1 and 2, and the later receives P:11, then it'll ask P for retransmission of messages P:3 - P:10. P *wraps* each retransmitted message and sends it as *regular* message to Q. Because regular messages are handled sequentially, by the regular thread pool, each message will be sent up to NAKACK (where it is unwrapped and sent further up) sequentially, destroying the semantics of OOB messages with concurrent and unordered delivery !
> SOLUTION: check whether an original message is OOB and - if so - set the wrapping message as OOB, too.
> TODO: check why we actually wrap retransmitted messages in NAKACk (we don't do it in UNICAST) ! Maybe this is leftover code from the days when retransmitted messages were bundled in NAKACK itself ? We should be able to simply copy the retransmitted message and send it to the requester (or all if mcast_xmit=true).
> TODO: why are we setting the msg.setSrc() in a retransmitted message ?

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        



More information about the jboss-jira mailing list