[jboss-dev-forums] [Design of JBossCache] - Re: Issues with shunned node rejoining a cluster

bstansberry@jboss.com do-not-reply at jboss.com
Wed Oct 11 12:48:19 EDT 2006


Bela can comment better as to whether not getting one last view before you leave is a flaw or intended behavior.

Looks like when a DISCONNECT comes down the channel, GMS sends a LEAVE_REQ to the coord, who, before sending out a new view, replies with a LEAVE_RSP. Upon receipt of the LEAVE_RSP, ParticipantGmsImpl sends a DISCONNECT_OK up to the app, and then passses the DISCONNECT down the channel.  When the DISCONNECT gets to NAKACK, it puts it into a state where no further messages are passed up.  Thus any subsequent view sent by the coord is dropped.

Any change to this would have to watch out for breaking this bit in JChannel.up():

 case Event.VIEW_CHANGE:
  |                 my_view=(View)evt.getArg();
  | 
  |                 // crude solution to bug #775120: if we get our first view *before* the CONNECT_OK,
  |                 // we simply set the state to connected
  |                 if(connected == false) {
  |                     connected=true;
  |                     synchronized(connect_mutex) { // bug fix contributed by Chris Wampler (bug #943881)
  |                         connect_ok_event_received=true;
  |                         connect_mutex.notify();
  |                     }
  |                 }

View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3977624#3977624

Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3977624



More information about the jboss-dev-forums mailing list