[ https://issues.apache.org/jira/browse/HDFS-7725?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14487207#comment-14487207 ]
Hudson commented on HDFS-7725: ------------------------------ FAILURE: Integrated in Hadoop-Hdfs-trunk-Java8 #149 (See [https://builds.apache.org/job/Hadoop-Hdfs-trunk-Java8/149/]) HDFS-7725. Incorrect 'nodes in service' metrics caused all writes to fail. Contributed by Ming Ma. (wang: rev 6af0d74a75f0f58d5e92e2e91e87735b9a62bb12) * hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt * hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/blockmanagement/DecommissionManager.java * hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/blockmanagement/HeartbeatManager.java * hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNamenodeCapacityReport.java > Incorrect "nodes in service" metrics caused all writes to fail > -------------------------------------------------------------- > > Key: HDFS-7725 > URL: https://issues.apache.org/jira/browse/HDFS-7725 > Project: Hadoop HDFS > Issue Type: Bug > Reporter: Ming Ma > Assignee: Ming Ma > Fix For: 2.8.0 > > Attachments: HDFS-7725-2.patch, HDFS-7725-3.patch, HDFS-7725.patch > > > One of our clusters sometimes couldn't allocate blocks from any DNs. > BlockPlacementPolicyDefault complains with the following messages for all DNs. > {noformat} > the node is too busy (load:x > y) > {noformat} > It turns out the {{HeartbeatManager}}'s {{nodesInService}} was computed > incorrectly when admins decomm or recomm dead nodes. Here are two scenarios. > * Decomm dead nodes. It turns out HDFS-7374 has fixed it; not sure if it is > intentional. cc / [~zhz], [~andrew.wang], [~atm] Here is the sequence of > event without HDFS-7374. > ** Cluster has one live node. nodesInService == 1 > ** The node becomes dead. nodesInService == 0 > ** Decomm the node. nodesInService == -1 > * However, HDFS-7374 introduces another inconsistency when recomm is involved. > ** Cluster has one live node. nodesInService == 1 > ** The node becomes dead. nodesInService == 0 > ** Decomm the node. nodesInService == 0 > ** Recomm the node. nodesInService == 1 -- This message was sent by Atlassian JIRA (v6.3.4#6332)