Return-Path: X-Original-To: apmail-hbase-issues-archive@www.apache.org Delivered-To: apmail-hbase-issues-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id A050FD183 for ; Fri, 20 Jul 2012 02:10:35 +0000 (UTC) Received: (qmail 70288 invoked by uid 500); 20 Jul 2012 02:10:35 -0000 Delivered-To: apmail-hbase-issues-archive@hbase.apache.org Received: (qmail 70223 invoked by uid 500); 20 Jul 2012 02:10:35 -0000 Mailing-List: contact issues-help@hbase.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Delivered-To: mailing list issues@hbase.apache.org Received: (qmail 70136 invoked by uid 99); 20 Jul 2012 02:10:35 -0000 Received: from issues-vm.apache.org (HELO issues-vm) (140.211.11.160) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 20 Jul 2012 02:10:35 +0000 Received: from isssues-vm.apache.org (localhost [127.0.0.1]) by issues-vm (Postfix) with ESMTP id ABE4F142860 for ; Fri, 20 Jul 2012 02:10:34 +0000 (UTC) Date: Fri, 20 Jul 2012 02:10:34 +0000 (UTC) From: "Hudson (JIRA)" To: issues@hbase.apache.org Message-ID: <1614011596.80175.1342750234708.JavaMail.jiratomcat@issues-vm> In-Reply-To: <782514489.1214.1341358234588.JavaMail.jiratomcat@issues-vm> Subject: [jira] [Commented] (HBASE-6325) [replication] Race in ReplicationSourceManager.init can initiate a failover even if the node is alive 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/HBASE-6325?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13418880#comment-13418880 ] Hudson commented on HBASE-6325: ------------------------------- Integrated in HBase-0.92 #480 (See [https://builds.apache.org/job/HBase-0.92/480/]) HBASE-6319 ReplicationSource can call terminate on itself and deadlock HBASE-6325 [replication] Race in ReplicationSourceManager.init can initiate a failover even if the node is alive (Revision 1363571) Result = FAILURE jdcryans : Files : * /hbase/branches/0.92/CHANGES.txt * /hbase/branches/0.92/src/main/java/org/apache/hadoop/hbase/replication/regionserver/ReplicationSource.java * /hbase/branches/0.92/src/main/java/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.java > [replication] Race in ReplicationSourceManager.init can initiate a failover even if the node is alive > ----------------------------------------------------------------------------------------------------- > > Key: HBASE-6325 > URL: https://issues.apache.org/jira/browse/HBASE-6325 > Project: HBase > Issue Type: Bug > Affects Versions: 0.90.6, 0.92.1, 0.94.0 > Reporter: Jean-Daniel Cryans > Assignee: Jean-Daniel Cryans > Fix For: 0.92.2, 0.96.0, 0.94.1 > > Attachments: HBASE-6325-0.92-v2.patch, HBASE-6325-0.92.patch > > > Yet another bug found during the leap second madness, it's possible to miss the registration of new region servers so that in ReplicationSourceManager.init we start the failover of a live and replicating region server. I don't think there's data loss but the RS that's being failed over will die on: > {noformat} > 2012-07-01 06:25:15,604 FATAL org.apache.hadoop.hbase.regionserver.HRegionServer: ABORTING region server sv4r23s48,10304,1341112194623: Writing replication status > org.apache.zookeeper.KeeperException$NoNodeException: KeeperErrorCode = NoNode for /hbase/replication/rs/sv4r23s48,10304,1341112194623/4/sv4r23s48%2C10304%2C1341112194623.1341112195369 > at org.apache.zookeeper.KeeperException.create(KeeperException.java:111) > at org.apache.zookeeper.KeeperException.create(KeeperException.java:51) > at org.apache.zookeeper.ZooKeeper.setData(ZooKeeper.java:1246) > at org.apache.hadoop.hbase.zookeeper.RecoverableZooKeeper.setData(RecoverableZooKeeper.java:372) > at org.apache.hadoop.hbase.zookeeper.ZKUtil.setData(ZKUtil.java:655) > at org.apache.hadoop.hbase.zookeeper.ZKUtil.setData(ZKUtil.java:697) > at org.apache.hadoop.hbase.replication.ReplicationZookeeper.writeReplicationStatus(ReplicationZookeeper.java:470) > at org.apache.hadoop.hbase.replication.regionserver.ReplicationSourceManager.logPositionAndCleanOldLogs(ReplicationSourceManager.java:154) > at org.apache.hadoop.hbase.replication.regionserver.ReplicationSource.shipEdits(ReplicationSource.java:607) > at org.apache.hadoop.hbase.replication.regionserver.ReplicationSource.run(ReplicationSource.java:368) > {noformat} > It seems to me that just refreshing {{otherRegionServers}} after getting the list of {{currentReplicators}} would be enough to fix this. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira