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 3F2CE18168 for ; Wed, 20 Jan 2016 06:21:41 +0000 (UTC) Received: (qmail 7892 invoked by uid 500); 20 Jan 2016 06:21:40 -0000 Delivered-To: apmail-hbase-issues-archive@hbase.apache.org Received: (qmail 7834 invoked by uid 500); 20 Jan 2016 06:21:40 -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 7784 invoked by uid 99); 20 Jan 2016 06:21:40 -0000 Received: from arcas.apache.org (HELO arcas) (140.211.11.28) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 20 Jan 2016 06:21:40 +0000 Received: from arcas.apache.org (localhost [127.0.0.1]) by arcas (Postfix) with ESMTP id 02F6C2C1F68 for ; Wed, 20 Jan 2016 06:21:40 +0000 (UTC) Date: Wed, 20 Jan 2016 06:21:40 +0000 (UTC) From: "Hadoop QA (JIRA)" To: issues@hbase.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Commented] (HBASE-15121) ConnectionImplementation#locateRegionInMeta() issue when master is restarted 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-15121?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15108089#comment-15108089 ] Hadoop QA commented on HBASE-15121: ----------------------------------- | (x) *{color:red}-1 overall{color}* | \\ \\ || Vote || Subsystem || Runtime || Comment || | {color:green}+1{color} | {color:green} hbaseanti {color} | {color:green} 0m 0s {color} | {color:green} Patch does not have any anti-patterns. {color} | | {color:green}+1{color} | {color:green} @author {color} | {color:green} 0m 0s {color} | {color:green} The patch does not contain any @author tags. {color} | | {color:red}-1{color} | {color:red} test4tests {color} | {color:red} 0m 0s {color} | {color:red} The patch doesn't appear to include any new or modified tests. Please justify why no new tests are needed for this patch. Also please list what manual steps were performed to verify this patch. {color} | | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 2m 18s {color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 0m 26s {color} | {color:green} master passed with JDK v1.8.0 {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 0m 17s {color} | {color:green} master passed with JDK v1.7.0_79 {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 1m 9s {color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} mvneclipse {color} | {color:green} 0m 10s {color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 0m 55s {color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 25s {color} | {color:green} master passed with JDK v1.8.0 {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 18s {color} | {color:green} master passed with JDK v1.7.0_79 {color} | | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 0m 19s {color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 0m 26s {color} | {color:green} the patch passed with JDK v1.8.0 {color} | | {color:green}+1{color} | {color:green} javac {color} | {color:green} 0m 26s {color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 0m 17s {color} | {color:green} the patch passed with JDK v1.7.0_79 {color} | | {color:green}+1{color} | {color:green} javac {color} | {color:green} 0m 17s {color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 1m 7s {color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} mvneclipse {color} | {color:green} 0m 10s {color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} whitespace {color} | {color:green} 0m 0s {color} | {color:green} Patch has no whitespace issues. {color} | | {color:green}+1{color} | {color:green} hadoopcheck {color} | {color:green} 20m 7s {color} | {color:green} Patch does not cause any errors with Hadoop 2.4.0 2.4.1 2.5.0 2.5.1 2.5.2 2.6.1 2.6.2 2.6.3 2.7.1. {color} | | {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 1m 4s {color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 25s {color} | {color:green} the patch passed with JDK v1.8.0 {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 18s {color} | {color:green} the patch passed with JDK v1.7.0_79 {color} | | {color:green}+1{color} | {color:green} unit {color} | {color:green} 0m 51s {color} | {color:green} hbase-client in the patch passed with JDK v1.8.0. {color} | | {color:green}+1{color} | {color:green} unit {color} | {color:green} 0m 51s {color} | {color:green} hbase-client in the patch passed with JDK v1.7.0_79. {color} | | {color:green}+1{color} | {color:green} asflicense {color} | {color:green} 0m 6s {color} | {color:green} Patch does not generate ASF License warnings. {color} | | {color:black}{color} | {color:black} {color} | {color:black} 32m 18s {color} | {color:black} {color} | \\ \\ || Subsystem || Report/Notes || | JIRA Patch URL | https://issues.apache.org/jira/secure/attachment/12783284/HBASE-15121-v0.patch | | JIRA Issue | HBASE-15121 | | Optional Tests | asflicense javac javadoc unit findbugs hadoopcheck hbaseanti checkstyle compile | | uname | Linux asf901.gq1.ygridcore.net 3.13.0-36-lowlatency #63-Ubuntu SMP PREEMPT Wed Sep 3 21:56:12 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux | | Build tool | maven | | Personality | /home/jenkins/jenkins-slave/workspace/PreCommit-HBASE-Build/component/dev-support/hbase-personality.sh | | git revision | master / 55bb5ff | | findbugs | v3.0.0 | | JDK v1.7.0_79 Test Results | https://builds.apache.org/job/PreCommit-HBASE-Build/199/testReport/ | | modules | C: hbase-client U: hbase-client | | Max memory used | 192MB | | Powered by | Apache Yetus 0.1.0 http://yetus.apache.org | | Console output | https://builds.apache.org/job/PreCommit-HBASE-Build/199/console | This message was automatically generated. > ConnectionImplementation#locateRegionInMeta() issue when master is restarted > ---------------------------------------------------------------------------- > > Key: HBASE-15121 > URL: https://issues.apache.org/jira/browse/HBASE-15121 > Project: HBase > Issue Type: Bug > Components: Client > Affects Versions: 2.0.0 > Reporter: Samir Ahmic > Assignee: Samir Ahmic > Fix For: 2.0.0 > > Attachments: HBASE-15121-v0.patch, HBASE-15121-v0.patch > > > I notice this issue while i was running IntegrationTestMTTR#testRestartMaster() test was failing on put operation. Here is sequence of events from logs leading to failed put operation: > Master restart > {code} > INFO [pool-5-thread-1] util.Shell: Executing full command [/usr/bin/ssh hnode2 "sudo -u hbase ps aux | grep proc_master | grep -v grep | tr -s ' ' | cut -d ' ' -f2 | xargs kill -s SIGKILL"] > {code} > Client trying to locate region for row=70efdf2ec9b086079795c442636b55fb-17 (this is additional logging inspecting metaKey which is used to search hbase:meta ) > {code} > 2016-01-15 10:26:05,169 INFO [HBaseWriterThread_9] client.ConnectionImplementation: metaKey inspection: table=IntegrationTestMTTRLoadTestTool row= 70efdf2ec9b086079795c442636b55fb-17 metaKey= IntegrationTestMTTRLoadTestTool,70efdf2ec9b086079795c442636b55fb-17,99999999999999 > {code} > Client throwing TableNotFoundException (hbase:meta scan returned null) > {code} > 2016-01-15 10:32:58,154 INFO [HBaseWriterThread_5] client.ConnectionImplementation: regionInfo result is null: HBaseWriterThread_5 throwing TableNotFoundException logging details table=IntegrationTestMTTRLoadTestTool row=70efdf2ec9b086079795c442636b55fb-17 metaKey=IntegrationTestMTTRLoadTestTool,70efdf2ec9b086079795c442636b55fb-17,99999999999999 > 2016-01-15 10:32:58,154 ERROR [HBaseWriterThread_5] client.AsyncProcess: Failed to get region location > org.apache.hadoop.hbase.TableNotFoundException: IntegrationTestMTTRLoadTestTool > at org.apache.hadoop.hbase.client.ConnectionImplementation.locateRegionInMeta(ConnectionImplementation.java:890) > at org.apache.hadoop.hbase.client.ConnectionImplementation.locateRegion(ConnectionImplementation.java:781) > at org.apache.hadoop.hbase.client.AsyncProcess.submit(AsyncProcess.java:396) > at org.apache.hadoop.hbase.client.AsyncProcess.submit(AsyncProcess.java:344) > at org.apache.hadoop.hbase.client.BufferedMutatorImpl.backgroundFlushCommits(BufferedMutatorImpl.java:239) > at org.apache.hadoop.hbase.client.BufferedMutatorImpl.flush(BufferedMutatorImpl.java:191) > at org.apache.hadoop.hbase.client.HTable.flushCommits(HTable.java:949) > at org.apache.hadoop.hbase.client.HTable.put(HTable.java:569) > at org.apache.hadoop.hbase.util.MultiThreadedWriter$HBaseWriterThread.insert(MultiThreadedWriter.java:146) > at org.apache.hadoop.hbase.util.MultiThreadedWriter$HBaseWriterThread.run(MultiThreadedWriter.java:111) > {code} > And as result we have failed insert operation: > {code} > 2016-01-15 10:32:58,179 ERROR [HBaseWriterThread_5] util.MultiThreadedWriter: Failed to insert: 17 after 60046ms; region information: cached: region=IntegrationTestMTTRLoadTestTool,66666660,1452849956427.05b437185a9437f178726a55a29a79b7., hostname=hnode4,16020,1452776418437, seqNum=5; cache is up to date; errors: exception from null for 70efdf2ec9b086079795c442636b55fb-17 > org.apache.hadoop.hbase.TableNotFoundException: IntegrationTestMTTRLoadTestTool > at org.apache.hadoop.hbase.client.ConnectionImplementation.locateRegionInMeta(ConnectionImplementation.java:890) > at org.apache.hadoop.hbase.client.ConnectionImplementation.locateRegion(ConnectionImplementation.java:781) > at org.apache.hadoop.hbase.client.AsyncProcess.submit(AsyncProcess.java:396) > at org.apache.hadoop.hbase.client.AsyncProcess.submit(AsyncProcess.java:344) > at org.apache.hadoop.hbase.client.BufferedMutatorImpl.backgroundFlushCommits(BufferedMutatorImpl.java:239) > at org.apache.hadoop.hbase.client.BufferedMutatorImpl.flush(BufferedMutatorImpl.java:191) > at org.apache.hadoop.hbase.client.HTable.flushCommits(HTable.java:949) > at org.apache.hadoop.hbase.client.HTable.put(HTable.java:569) > at org.apache.hadoop.hbase.util.MultiThreadedWriter$HBaseWriterThread.insert(MultiThreadedWriter.java:146) > at org.apache.hadoop.hbase.util.MultiThreadedWriter$HBaseWriterThread.run(MultiThreadedWriter.java:111) > {code} > leading to test failing: > {code} > Failed to write key: 17 > 2016-01-15 10:33:53,984 INFO [main] mttr.IntegrationTestMTTR: RestartMaster failed after 469878ms. > java.util.concurrent.ExecutionException: java.lang.AssertionError: Load failed expected:<0> but was:<1> > {code} > Here is snippet from ConnectionImplementation#locateRegionInMeta() throwing exception: > {code} > try { > Result regionInfoRow = null; > ReversedClientScanner rcs = null; > try { > rcs = new ClientSmallReversedScanner(conf, s, TableName.META_TABLE_NAME, this, > rpcCallerFactory, rpcControllerFactory, getMetaLookupPool(), 0); > regionInfoRow = rcs.next(); > } finally { > if (rcs != null) { > rcs.close(); > } > } > if (regionInfoRow == null) { > throw new TableNotFoundException(tableName); > {code} > I was able to avoid this issue by removing thrown declaration and adding continue allowing client to retry to locate region. This sounds like simplest solution here. > Thoughts ? -- This message was sent by Atlassian JIRA (v6.3.4#6332)