2015-11-25 8:39 GMT+03:00 <kfuj...@apache.org>: > Author: kfujino > Date: Wed Nov 25 05:39:26 2015 > New Revision: 1716305 > > URL: http://svn.apache.org/viewvc?rev=1716305&view=rev > Log: > When using a static cluster, add the members that have been cached in the > membership service to the map members list in order to ensure that the map > member is a static member. > > Modified: > > tomcat/trunk/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java > tomcat/trunk/webapps/docs/changelog.xml > > Modified: > tomcat/trunk/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java > URL: > http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java?rev=1716305&r1=1716304&r2=1716305&view=diff > ============================================================================== > --- > tomcat/trunk/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java > (original) > +++ > tomcat/trunk/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java > Wed Nov 25 05:39:26 2015 > @@ -733,9 +733,10 @@ public abstract class AbstractReplicated > if ( member.equals(getChannel().getLocalMember(false)) ) return; > boolean memberAdded = false; > //select a backup node if we don't have one > + Member mapMember = getChannel().getMember(member);
Can "getChannel().getMember(member)" call return null? Using null value as a key for mapMembers looks wrong. E.g. I see that org.apache.catalina.tribes.membership.Membership.getMember(Member) may return null. The Membership.getMember(Member) method is not a Channel method, but it is used to implement DomainFilterInterceptor.getMember(Member mbr) NonBlockingCoordinator.getMember(Member mbr) TcpFailureDetector.getMember(Member mbr) MCastService.getMember(Member) > synchronized (mapMembers) { > - if (!mapMembers.containsKey(member) ) { > - mapMembers.put(member, > Long.valueOf(System.currentTimeMillis())); > + if (!mapMembers.containsKey(mapMember) ) { > + mapMembers.put(mapMember, > Long.valueOf(System.currentTimeMillis())); > memberAdded = true; > } > } > > Modified: tomcat/trunk/webapps/docs/changelog.xml > URL: > http://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/changelog.xml?rev=1716305&r1=1716304&r2=1716305&view=diff > ============================================================================== > --- tomcat/trunk/webapps/docs/changelog.xml (original) > +++ tomcat/trunk/webapps/docs/changelog.xml Wed Nov 25 05:39:26 2015 > @@ -145,6 +145,11 @@ > if the static member that is registered to the remove suspect list > has > disappeared. (kfujino) > </fix> > + <fix> > + When using a static cluster, add the members that have been cached in > + the membership service to the map members list in order to ensure > that > + the map member is a static member. (kfujino) > + </fix> > </changelog> > </subsection> > <subsection name="jdbc-pool"> > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org > For additional commands, e-mail: dev-h...@tomcat.apache.org > --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org