Browse Source

ZOOKEEPER-1840. Server tries to connect to itself during dynamic reconfig (Alexander Shraer via michim)

git-svn-id: https://svn.apache.org/repos/asf/zookeeper/trunk@1587818 13f79535-47bb-0310-9956-ffa450edef68
Michi Mutsuzaki 11 năm trước cách đây
mục cha
commit
dcffe61b80

+ 3 - 0
CHANGES.txt

@@ -608,6 +608,9 @@ BUGFIXES:
   the same port for leader in two different tests. The second test periodically
   fails complaining that the port is still in use. (Alexander Shraer via michim)
 
+  ZOOKEEPER-1840. Server tries to connect to itself during dynamic reconfig
+  (Alexander Shraer via michim)
+
 IMPROVEMENTS:
 
   ZOOKEEPER-1170. Fix compiler (eclipse) warnings: unused imports,

+ 1 - 1
src/java/main/org/apache/zookeeper/server/quorum/QuorumPeer.java

@@ -1252,7 +1252,7 @@ public class QuorumPeer extends ZooKeeperThread implements QuorumStats.Provider
        if (qcm!=null && getQuorumVerifier()!=null && getLastSeenQuorumVerifier()!=null) {
            Map<Long, QuorumServer> committedView = getQuorumVerifier().getAllMembers();
            for (Entry<Long, QuorumServer> e: getLastSeenQuorumVerifier().getAllMembers().entrySet()){
-               if (!committedView.containsKey(e.getKey())) 
+               if (e.getKey() != getId() && !committedView.containsKey(e.getKey())) 
                    qcm.connectOne(e.getKey(), e.getValue().electionAddr);
            }
         }