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

NAKACK: SET_DIGEST does not overwrite the digest

XMLWordPrintable

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

      When we set a digest in NAKACK, we do not overwrite an element for a member if it already exists. With state transfer, the following issue can occur (see [1]):
      Scenario #2:

      • [NAKACK] D receives B:11 (digest is 11 now for B)
      • [NAKACK] D applies the digest: this does NOT reset the digest for B to #10, but it remains #11 !!
      • D delivers B:11 to the app, changes state
      • D sets state, overwriting the change from B:11
        --> B:11 will NOT get retransmitted as the digest in NAKACK contains it !
        --> B:11 is lost

      SOLUTION: maybe add a 'state' boolean to the setDigest() method and overwrite if true

      This is a regression in 2.8 only; 2.6.x and 2.4.x handle SET_DIGEST correctly and do overwrite the digest.

      [1] https://jira.jboss.org/jira/browse/JGRP-1013

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

              Created:
              Updated:
              Resolved: