[jboss-jira] [JBoss JIRA] Commented: (JGRP-689) Shared transport: 'members' and 'view' variables are not correctly updated

Bela Ban (JIRA) jira-events at lists.jboss.org
Thu Feb 21 08:35:02 EST 2008


    [ http://jira.jboss.com/jira/browse/JGRP-689?page=comments#action_12400165 ] 
            
Bela Ban commented on JGRP-689:
-------------------------------

The first solution was maintaining a hashmap (in TP) of cluster names and address lists. This would be updated on view changes. Sending group messages would entail looking up the list for a given cluster and then sending a message to each member in that list.
HOWEVER, this doesn't work with message *bundling*: a bundle might contain messages (all sent ot the same destination) with different cluster names. We would have had to add the cluster name to a message. This was rejected, as this would have (a) changed the wire format, making this release backwards-incompatible and (b) adding N bytes to each message, which is overhead.

The solution adopted is much simpler:
- We have a 'members' variable in TP
- If no shared transport is used, we update that variable on a view change
- If a shared transport is used:
  - Ask to up_prots for their membership (TP has shared membership for all clusters, but the protocols above don't)
  - Merge all memberships into a combined one
  - Update 'members'

This has the side effect that we send a group message to *all* involved nodes (where they might get discarded if the cluster name doesn't match). However, this shouldn't be so bad, as we usually have symmetrical deployments, ie. JBossWeb clusters and ClusterPartition services are deployed on all JBoss instances across a cluster

> Shared transport: 'members' and 'view' variables are not correctly updated
> --------------------------------------------------------------------------
>
>                 Key: JGRP-689
>                 URL: http://jira.jboss.com/jira/browse/JGRP-689
>             Project: JGroups
>          Issue Type: Bug
>            Reporter: Bela Ban
>         Assigned To: Bela Ban
>             Fix For: 2.6.2, 2.7
>
>
> Variables 'view' and 'members' are updated based on view changes, but we always set the vars from the *last* VIEW-CHANGE.
> Solution: bind the 2 vars to the right channel, probably based on a hashmap

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        



More information about the jboss-jira mailing list