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 01E6E17280 for ; Tue, 5 May 2015 00:45:14 +0000 (UTC) Received: (qmail 67145 invoked by uid 500); 5 May 2015 00:45:13 -0000 Delivered-To: apmail-hbase-issues-archive@hbase.apache.org Received: (qmail 67102 invoked by uid 500); 5 May 2015 00:45:13 -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 67090 invoked by uid 99); 5 May 2015 00:45:13 -0000 Received: from arcas.apache.org (HELO arcas.apache.org) (140.211.11.28) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 05 May 2015 00:45:13 +0000 Date: Tue, 5 May 2015 00:45:13 +0000 (UTC) From: "Stephen Yuan Jiang (JIRA)" To: issues@hbase.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Commented] (HBASE-13576) HBCK enhancement: Failure in checking one region should not fail the entire HBCK operation. 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-13576?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14527660#comment-14527660 ] Stephen Yuan Jiang commented on HBASE-13576: -------------------------------------------- The region check run parallel - the first failed region might not have any significant indication. We have already printed out all the exceptions of failed regions in the log, therefore, no context lose: + try { + checkRegionConsistency(key, hbi); + } catch (Exception e) { + // If the region is non-META region, skip this region and send warning/error message; if + // the region is META region, we should not continue. + LOG.warn("Unable to complete check or repair the region '" + hbi.getRegionNameAsString() + + "'.", e); > HBCK enhancement: Failure in checking one region should not fail the entire HBCK operation. > ------------------------------------------------------------------------------------------- > > Key: HBASE-13576 > URL: https://issues.apache.org/jira/browse/HBASE-13576 > Project: HBase > Issue Type: Bug > Components: hbck > Affects Versions: 2.0.0, 1.1.0, 1.2.0 > Reporter: Stephen Yuan Jiang > Assignee: Stephen Yuan Jiang > Attachments: HBASE-13576.v1-master.patch, HBASE-13576.v2-master.patch, HBASE-13576.v3-master.patch > > > HBaseFsck#checkRegionConsistency() checks region consistency and repair the corruption if requested. However, this function expects some exceptions. For example, in one aspect of region repair, it calls HBaseFsckRepair#waitUntilAssigned(), if a region is in transition for over 120 seconds (default value of "hbase.hbck.assign.timeout" configuration), IOException would throw. > The problem is that one exception in checkRegionConsistency() would kill entire hbck operation, because the exception would propagate up. > The proposal is that if the region is not META region ( or a system table region if we prefer), we can skip the region if HBaseFsck#checkRegionConsistency() fails. We could print out skip regions in summary section so that users know to either re-run or investigate potential issue for that region. -- This message was sent by Atlassian JIRA (v6.3.4#6332)