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

MERGE3: a dead member as merge leader will never trigger a merge

    Details

    • Type: Bug
    • Status: Resolved (View Workflow)
    • Priority: Major
    • Resolution: Done
    • Affects Version/s: None
    • Fix Version/s: 4.0.12
    • Labels:
      None

      Description

      When we have member(s) which have a view with a dead member as coordinator, when the dead member becomes part of the subgroup coordinators and happens to be chosen as merge leader, then a merge will never ensue.

      Example:

      • Member 2 (with view 2|5) was the previous coordinator and left the cluster, installing view 3|6 before stopping
        • View 2|5={2,3,4,5,6,7}; view 3|6={3,4,5,6,7}
      • Member 7 didn't get view 3|6 and still has view 2|5
      • Everybody else has view 3|6
      • MERGE3 gets the following views:
        • 2|5: 7 // member 7 has this view
        • 3|6: 3,4,5,6 // members 3,4,5 and 6 have this view
      • 2 and 3 are added to a sorted set and the first member of the set (2) is chose as merge leader. 3 doesn't take any action, as it notices it won't be the merge leader
        • The reason 2 was first in the sorted set is that (possibly by coincidence) its UUID is lower than that of 3. If this wasn't the case, 3 would be merge leader and start (and successfully complete) a merge. However, with dead member 2 being picked as merge leader, a merge will never be triggered!

        Gliffy Diagrams

          Attachments

            Issue Links

              Activity

                People

                • Assignee:
                  belaban Bela Ban
                  Reporter:
                  belaban Bela Ban
                • Votes:
                  0 Vote for this issue
                  Watchers:
                  2 Start watching this issue

                  Dates

                  • Created:
                    Updated:
                    Resolved: