JiangHua Zhu created HDFS-15943:
-----------------------------------

             Summary: Solve the problem of making 
HeartbeatManager#heartbeatCheck() execute safely
                 Key: HDFS-15943
                 URL: https://issues.apache.org/jira/browse/HDFS-15943
             Project: Hadoop HDFS
          Issue Type: Bug
            Reporter: JiangHua Zhu


Inside HeartbeatManager#heartbeatCheck(), a variable is defined here:
DatanodeDescriptor dead = null;
In fact, when HeartbeatManager#heartbeatCheck() is executed, it will cause the 
DatanodeManger to modify the data not in time.
Code:
DatanodeDescriptor dead = null;
synchronized(this) {
......
}
if (dead != null) {
......
dm.removeDeadDatanode(dead, !dead.isMaintenance());
......
}

And we will not prevent the simultaneous execution of heartbeatCheck() twice.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: hdfs-dev-unsubscr...@hadoop.apache.org
For additional commands, e-mail: hdfs-dev-h...@hadoop.apache.org

Reply via email to