Преглед изворни кода

ZOOKEEPER-1440. Spurious log error messages when QuorumCnxManager is shutting down (Jordan Zimmerman via michim)

git-svn-id: https://svn.apache.org/repos/asf/zookeeper/trunk@1335338 13f79535-47bb-0310-9956-ffa450edef68
Michi Mutsuzaki пре 13 година
родитељ
комит
21c9ae268f
2 измењених фајлова са 15 додато и 10 уклоњено
  1. 3 0
      CHANGES.txt
  2. 12 10
      src/java/main/org/apache/zookeeper/server/quorum/QuorumCnxManager.java

+ 3 - 0
CHANGES.txt

@@ -289,6 +289,9 @@ IMPROVEMENTS:
 
   ZOOKEEPER-1451. C API improperly logs getaddrinfo failures on Linux when using glibc (Stephen Tyree via michim)
 
+  ZOOKEEPER-1440. Spurious log error messages when QuorumCnxManager is shutting
+  down (Jordan Zimmerman via michim)
+
 Release 3.4.0 - 
 
 Non-backward compatible changes:

+ 12 - 10
src/java/main/org/apache/zookeeper/server/quorum/QuorumCnxManager.java

@@ -493,16 +493,18 @@ public class QuorumCnxManager {
                         numRetries = 0;
                     }
                 } catch (IOException e) {
-                    LOG.error("Exception while listening", e);
-                    numRetries++;
-                    try {
-                        ss.close();
-                        Thread.sleep(1000);
-                    } catch (IOException ie) {
-                        LOG.error("Error closing server socket", ie);
-                    } catch (InterruptedException ie) {
-                        LOG.error("Interrupted while sleeping. " +
-                                  "Ignoring exception", ie);
+                    if ( !shutdown ) {
+                        LOG.error("Exception while listening", e);
+                        numRetries++;
+                        try {
+                            ss.close();
+                            Thread.sleep(1000);
+                        } catch (IOException ie) {
+                            LOG.error("Error closing server socket", ie);
+                        } catch (InterruptedException ie) {
+                            LOG.error("Interrupted while sleeping. " +
+                                      "Ignoring exception", ie);
+                        }
                     }
                 }
             }