[
https://jira.jboss.org/jira/browse/JGRP-1061?page=com.atlassian.jira.plug...
]
Bela Ban commented on JGRP-1061:
--------------------------------
The solution was to *prevent* overlapping flushes in the way the merge algorithm works: in
the case of
A: BAC
B: BC
C: BC
The merge coordinator was B and the participants B and A. The total members were {A,B,C}.
In the first step, all members associated with a coordinator are removed from the total
members:
B: BC and members={A}
In the second step, we create individual members lists for the (non-coord) merge
participants:
A: {A}
In this case, we have
B: {B,C} and A: {A}, so the flushes won't overlap.
Another example:
A: AB
B: AB
C: CD
D: CD
If we get responses from A and D, then the merge participants and associated members are
A: {A,B}
C: {C}
D: {D}
The reason that we didn't flush {C,D} as a sub-partition is that we didn't get a
response from C itself, but from D !
FLUSH: asymmetric merge fails
-----------------------------
Key: JGRP-1061
URL:
https://jira.jboss.org/jira/browse/JGRP-1061
Project: JGroups
Issue Type: Bug
Reporter: Bela Ban
Assignee: Bela Ban
Fix For: 2.8
A: {B,A,C}
B: {B,C}
C: {B,C}
B and C have the same view, but A has a different (older) view which still includes B and
C
The new merge now determines that the partition coordinators for the merge are B and A.
When FLUSH is enabled, before handling the merge request A tries to flush {A,B,C} and B
tries to flush {B,C}. The latter works, but the former fails as A cannot communicate with
B and C !
SOLUTION: the partition for A needs to be {A} and not {B,A,C}.
Is this possible in all cases, or can we NOT prevent merging of overlapping partitions ?
(Then flush would always fail !)
--
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