[jbosscache-dev] FW: [JBoss JIRA] Created: (JBAS-3753) HAParititonImpl implements org.jgroups.ChannelListener

Brian Stansberry brian.stansberry at jboss.com
Tue Oct 10 12:40:46 EDT 2006


I opened a forum thread for this at
http://www.jboss.com/index.html?module=bb&op=viewtopic&t=92428; let's do
any further discussion there.

Brian Stansberry wrote:
> The problem is that when your channel disconnects, you don't
> get a new view. Experiments with HAPartition showed me that.
> You do get one when it reconnects. Mainly the issue is to
> think through the implications of that. Some initial thoughts:
> 
> 1) While you're disconnected you can't properly replicate.
> What's the proper behavior -- hold calls in
> ReplicationInterceptor until you reconnect, which will happen
> automatically?  Or throw exceptions when you try to send
> messages on the channel (which I'd expect is what happens
> now)? If the latter, it becomes important to have a way to
> communicate to the application that the cache is
> disconnected, so the application can decide whether or not to
> hold calls.
> 
> 2) When the new view comes in after reconnect, does the node
> need to reassign it's buddy and transfer state? During the
> period of broken communication leading up to the shunning,
> the buddy probably wasn't getting replication traffic.  If
> REPL_ASYNC, the sender would not know this.  If we do need to
> reassign buddies, when the new view comes in will the BR code
> recognize it needs to do this?
> 
> 3) The channel is always AUTO_GET_STATE. So, when it
> reconnects getState() will be called on the coordinator and
> setState() will be called on the node.  This is inappropriate
> in many configurations; basically most of those that don't do
> an initial state transfer.  See
> http://jira.jboss.com/jira/browse/JBCACHE-805. If it is
> appropriate, do we handle it properly?
> 
> 3) Non-BR case with region-based marshalling. We definitely
> don't want a single monolithic state transfer; won't be able
> to deserialize it. But, we do need to re-transfer the state,
> as we're now out of sync with the cache.  Right now we don't do this.
> 
> A lot of similar issues apply in the merge case.
> 
> -Brian
> 
> Manik Surtani wrote:
>> Within JBC, how does this affect?  Perhaps triggering a reorg of budy
>> groups?  But this is done when a new view is issued anyway.
>> 
>>> Hi,
>>> 
>>> The below issue pertains to JBC as well.  Propagation of awareness
>>> of shunning to user code may be less of an issue, but internal
>>> awareness is important. 
>>> 
>>> Brian Stansberry (JIRA) wrote:
>>>> HAParititonImpl implements org.jgroups.ChannelListener
>>>> ------------------------------------------------------
>>>> 
>>>>                  Key: JBAS-3753
>>>>                  URL: http://jira.jboss.com/jira/browse/JBAS-3753
>>>>              Project: JBoss Application Server
>>>>           Issue Type: Feature Request
>>>>       Security Level: Public (Everyone can see)
>>>>           Components: Clustering
>>>>     Affects Versions: JBossAS-4.0.4.GA, JBossAS-3.2.8.SP1
>>>>             Reporter: Brian Stansberry
>>>>          Assigned To: Brian Stansberry
>>>>              Fix For: JBossAS-5.0.1.CR1
>>>> 
>>>> 
>>>> Currently if a JChannel is shunned and disconnects, higher level
>>>> services are unaware of this and can't take any remedial action.
>>>> 
>>>> We need to do something like implement ChannelListener so an
>>>> HAPartition is aware when the events on the underlying channel
>>>> occur. Then devise a scheme to propagate some of the events to user
>>>> code. Preferably this will follow as much as possible the existing
>>>> notification scheme; i.e. pass a new view to HAMembershipListener
>>>> impls that doesn't include the current node.
>>> 
>>> 
>>> 
>>> Brian Stansberry
>>> Lead, AS Clustering
>>> JBoss, a division of Red Hat
>>> Ph: 510-396-3864
>>> skype: bstansberry
>>> 
>>> _______________________________________________
>>> jbosscache-dev mailing list
>>> jbosscache-dev at lists.jboss.org
>>> https://lists.jboss.org/mailman/listinfo/jbosscache-dev




More information about the jbosscache-dev mailing list