Browse Source

ZOOKEEPER-427. ZooKeeper server unexpectedly high CPU utilisation

git-svn-id: https://svn.apache.org/repos/asf/hadoop/zookeeper/trunk@786251 13f79535-47bb-0310-9956-ffa450edef68
Benjamin Reed 16 năm trước cách đây
mục cha
commit
d41b671bd6

+ 2 - 0
CHANGES.txt

@@ -124,6 +124,8 @@ BUGFIXES:
   ZOOKEEPER-408. address all findbugs warnings in persistence classes.
 (phunt, mahadev, flavio via mahadev)
 
+  ZOOKEEPER-427. ZooKeeper server unexpectedly high CPU utilisation (Sergey Zhuravlev via breed)
+
 IMPROVEMENTS:
   ZOOKEEPER-308. improve the atomic broadcast performance 3x.
   (breed via mahadev)

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

@@ -527,7 +527,9 @@ public class QuorumCnxManager {
                      * message
                      */
                     while (msgLength.hasRemaining()) {
-                        channel.read(msgLength);
+                        if (channel.read(msgLength) < 0) {
+                            throw new IOException("Channel eof");
+                        }
                     }
                     msgLength.position(0);
                     int length = msgLength.getInt();