Uploaded image for project: 'JGroups'
  1. JGroups
  2. JGRP-1098

NAKACK: retransmitted OOB messages are retransmitted as regular messages

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • Major
    • 2.8
    • None
    • None

    Description

      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 ?

      Attachments

        Activity

          People

            rhn-engineering-bban Bela Ban
            rhn-engineering-bban Bela Ban
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: