You are viewing a plain text version of this content. The canonical link for it is here.
Posted to hdfs-issues@hadoop.apache.org by "Vinod Kumar Vavilapalli (JIRA)" <ji...@apache.org> on 2015/09/01 02:32:46 UTC

[jira] [Updated] (HDFS-7714) Simultaneous restart of HA NameNodes and DataNode can cause DataNode to register successfully with only one NameNode.

     [ https://issues.apache.org/jira/browse/HDFS-7714?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Vinod Kumar Vavilapalli updated HDFS-7714:
------------------------------------------
    Fix Version/s: 2.6.1

[~sjlee0] backported this to 2.6.1. I just pushed the commit to 2.6.1 after running compilation. The patch applied cleanly.

> Simultaneous restart of HA NameNodes and DataNode can cause DataNode to register successfully with only one NameNode.
> ---------------------------------------------------------------------------------------------------------------------
>
>                 Key: HDFS-7714
>                 URL: https://issues.apache.org/jira/browse/HDFS-7714
>             Project: Hadoop HDFS
>          Issue Type: Bug
>          Components: datanode
>    Affects Versions: 2.6.0
>            Reporter: Chris Nauroth
>            Assignee: Vinayakumar B
>              Labels: 2.6.1-candidate
>             Fix For: 2.7.0, 2.6.1
>
>         Attachments: HDFS-7714-001.patch, HDFS-7714-002.patch
>
>
> In an HA deployment, DataNodes must register with both NameNodes and send periodic heartbeats and block reports to both.  However, if NameNodes and DataNodes are restarted simultaneously, then this can trigger a race condition in registration.  The end result is that the {{BPServiceActor}} for one NameNode terminates, but the {{BPServiceActor}} for the other NameNode remains alive.  The DataNode process is then in a "half-alive" state where it only heartbeats and sends block reports to one of the NameNodes.  This could cause a loss of storage capacity after an HA failover.  The DataNode process would have to be restarted to resolve this.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)