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

NAKACK2: trim missing messages in retransmit request before sending

XMLWordPrintable

    • Icon: Enhancement Enhancement
    • Resolution: Done
    • Icon: Major Major
    • 5.2
    • None
    • None
    • False
    • False

      When we send a retransmission request for missing messages, e.g. {5, 6-9, 10, 15-17}, it is possible that the actual retransmission table has moved on, as it received missing messages and/or stability messages.

      This can happen on heavy traffic.

      Example: the retransmit table could be [low=8, highest-delivered=10, highest-received=20]. Because message 10 has been delivered, we can remove all seqnos from the retransmit request that are less than or equal to 10. The retransmit request would thus be trimmed to {15-17}.

      This optimization reduces both retransmission requests and retransmission responses.

      Update: we can actually remove all seqnos lower than the highest deliverable seqno, not the highest delivered seqno: 'deliverable' means that the seqno and all seqnos below it can be delivered, ie. there are no seqno gaps between highest-delivered and highest-deliverable.

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

                Created:
                Updated:
                Resolved: