On 11/02/2011 11:18 PM, Yunkai Zhang wrote: > Hi Angus: > > I found that corosync sends downlist(alias leftlist in CPG) and > joinlist separately to CPG client after a new ring established. > > When a node lefts from or joins into a ring, only downlist or joinlist > contain content, this behavior seems not strange. > > But suppose there are two ring: Ring(A,B), Ring(C,D,E,F) that are > forming into a new ring, and these nodes: B,E,F dropped in the GATHER > state, then only these nodes: A,C,D will form the new Ring(A,C,D). And > corosync will send downlist(B) and joinlist(C,D) as two confchg events > to the CPG client of node A. This will make CPG client confused. > > The correct way is that send _Only_ one confchg event containing both > downlist and joinlist to the CPG client. In this case, > 1) The CPG client of A should receive only one confchg as following: > memb:A,C,D left:B join:C,D > > 2) The CPG client of C,D should receive only one confchg as following: > memb:A,C,D left:E,F join:A > > Angus, what is your opinion? > > If you agree with me, I would summit patch to fix it. > The entire membership algorithm in cpg is suboptimal. It was kept as it is to maintain onwire compatibility with openais whitetank. _______________________________________________ discuss mailing list discuss@xxxxxxxxxxxx http://lists.corosync.org/mailman/listinfo/discuss