Repository: hadoop Updated Branches: refs/heads/branch-2.6.1 a703952d3 -> 6154abfed
HDFS-7714. Simultaneous restart of HA NameNodes and DataNode can cause DataNode to register successfully with only one NameNode.(Contributed by Vinayakumar B) (cherry picked from commit 3d15728ff5301296801e541d9b23bd1687c4adad) (cherry picked from commit a1bf7aecf7d018c5305fa3bd7a9e3ef9af3155c1) (cherry picked from commit c1e65de57e8ef760586e28cd37397ea9a7ac7944) Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/6154abfe Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/6154abfe Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/6154abfe Branch: refs/heads/branch-2.6.1 Commit: 6154abfedae62f3aa505a9c8b95b7af34da962c9 Parents: a703952 Author: Vinayakumar B <vinayakum...@apache.org> Authored: Tue Feb 10 10:43:08 2015 +0530 Committer: Vinod Kumar Vavilapalli <vino...@apache.org> Committed: Mon Aug 31 17:26:28 2015 -0700 ---------------------------------------------------------------------- hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt | 3 +++ .../org/apache/hadoop/hdfs/server/datanode/BPServiceActor.java | 5 +++++ 2 files changed, 8 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hadoop/blob/6154abfe/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt ---------------------------------------------------------------------- diff --git a/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt b/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt index 648f1ac..baeab81 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt +++ b/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt @@ -70,6 +70,9 @@ Release 2.6.1 - UNRELEASED HDFS-7707. Edit log corruption due to delayed block removal again. (Yongjun Zhang via kihwal) + HDFS-7714. Simultaneous restart of HA NameNodes and DataNode can cause + DataNode to register successfully with only one NameNode.(vinayakumarb) + Release 2.6.0 - 2014-11-18 INCOMPATIBLE CHANGES http://git-wip-us.apache.org/repos/asf/hadoop/blob/6154abfe/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/BPServiceActor.java ---------------------------------------------------------------------- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/BPServiceActor.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/BPServiceActor.java index 6bdb68a..62ba1ab 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/BPServiceActor.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/BPServiceActor.java @@ -19,6 +19,7 @@ package org.apache.hadoop.hdfs.server.datanode; import static org.apache.hadoop.util.Time.now; +import java.io.EOFException; import java.io.IOException; import java.net.InetSocketAddress; import java.net.SocketTimeoutException; @@ -802,6 +803,10 @@ class BPServiceActor implements Runnable { // Use returned registration from namenode with updated fields bpRegistration = bpNamenode.registerDatanode(bpRegistration); break; + } catch(EOFException e) { // namenode might have just restarted + LOG.info("Problem connecting to server: " + nnAddr + " :" + + e.getLocalizedMessage()); + sleepAndLogInterrupts(1000, "connecting to server"); } catch(SocketTimeoutException e) { // namenode is busy LOG.info("Problem connecting to server: " + nnAddr); sleepAndLogInterrupts(1000, "connecting to server");