Return-Path: X-Original-To: apmail-hadoop-hdfs-issues-archive@minotaur.apache.org Delivered-To: apmail-hadoop-hdfs-issues-archive@minotaur.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id C8D1A10A40 for ; Fri, 2 May 2014 13:39:52 +0000 (UTC) Received: (qmail 73324 invoked by uid 500); 2 May 2014 13:39:26 -0000 Delivered-To: apmail-hadoop-hdfs-issues-archive@hadoop.apache.org Received: (qmail 73228 invoked by uid 500); 2 May 2014 13:39:24 -0000 Mailing-List: contact hdfs-issues-help@hadoop.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: hdfs-issues@hadoop.apache.org Delivered-To: mailing list hdfs-issues@hadoop.apache.org Received: (qmail 73062 invoked by uid 99); 2 May 2014 13:39:22 -0000 Received: from arcas.apache.org (HELO arcas.apache.org) (140.211.11.28) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 02 May 2014 13:39:22 +0000 Date: Fri, 2 May 2014 13:39:22 +0000 (UTC) From: "Hudson (JIRA)" To: hdfs-issues@hadoop.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Commented] (HDFS-6289) HA failover can fail if there are pending DN messages for DNs which no longer exist MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 [ https://issues.apache.org/jira/browse/HDFS-6289?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13987689#comment-13987689 ] Hudson commented on HDFS-6289: ------------------------------ FAILURE: Integrated in Hadoop-Hdfs-trunk #1748 (See [https://builds.apache.org/job/Hadoop-Hdfs-trunk/1748/]) HDFS-6289. HA failover can fail if there are pending DN messages for DNs which no longer exist. Contributed by Aaron T. Myers. (atm: http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1591413) * /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt * /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/blockmanagement/BlockManager.java * /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/blockmanagement/PendingDataNodeMessages.java * /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/fsdataset/impl/FsDatasetUtil.java * /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/MiniDFSCluster.java * /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/ha/TestPendingCorruptDnMessages.java > HA failover can fail if there are pending DN messages for DNs which no longer exist > ----------------------------------------------------------------------------------- > > Key: HDFS-6289 > URL: https://issues.apache.org/jira/browse/HDFS-6289 > Project: Hadoop HDFS > Issue Type: Bug > Components: ha > Affects Versions: 2.4.0 > Reporter: Aaron T. Myers > Assignee: Aaron T. Myers > Priority: Critical > Fix For: 2.5.0 > > Attachments: HDFS-6289.patch, HDFS-6289.patch > > > In an HA setup, the standby NN may receive messages from DNs for blocks which the standby NN is not yet aware of. It queues up these messages and replays them when it next reads from the edit log or fails over. On a failover, all of these pending DN messages must be processed successfully in order for the failover to succeed. If one of these pending DN messages refers to a DN storageId that no longer exists (because the DN with that transfer address has been reformatted and has re-registered with the same transfer address) then on transition to active the NN will not be able to process this DN message and will suicide with an error like the following: > {noformat} > 2014-04-25 14:23:17,922 FATAL namenode.NameNode (NameNode.java:doImmediateShutdown(1525)) - Error encountered requiring NN shutdown. Shutting down immediately. > java.io.IOException: Cannot mark blk_1073741825_900(stored=blk_1073741825_1001) as corrupt because datanode 127.0.0.1:33324 does not exist > {noformat} -- This message was sent by Atlassian JIRA (v6.2#6252)