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 2E8E118EF6 for ; Fri, 6 Nov 2015 22:33:12 +0000 (UTC) Received: (qmail 31886 invoked by uid 500); 6 Nov 2015 22:33:11 -0000 Delivered-To: apmail-hbase-issues-archive@hbase.apache.org Received: (qmail 31749 invoked by uid 500); 6 Nov 2015 22:33:11 -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 31437 invoked by uid 99); 6 Nov 2015 22:33:11 -0000 Received: from arcas.apache.org (HELO arcas) (140.211.11.28) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 06 Nov 2015 22:33:11 +0000 Received: from arcas.apache.org (localhost [127.0.0.1]) by arcas (Postfix) with ESMTP id 152872C1F6F for ; Fri, 6 Nov 2015 22:33:11 +0000 (UTC) Date: Fri, 6 Nov 2015 22:33:11 +0000 (UTC) From: "Hudson (JIRA)" To: issues@hbase.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Commented] (HBASE-14632) Region server aborts due to unguarded dereference of Reader 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-14632?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14994591#comment-14994591 ] Hudson commented on HBASE-14632: -------------------------------- FAILURE: Integrated in HBase-1.3 #352 (See [https://builds.apache.org/job/HBase-1.3/352/]) HBASE-14632 Region server aborts due to unguarded dereference of Reader (tedyu: rev 0e2e5d328071a9f5a116a9fb0ed1df7bc1f562ab) * hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HStore.java > Region server aborts due to unguarded dereference of Reader > ----------------------------------------------------------- > > Key: HBASE-14632 > URL: https://issues.apache.org/jira/browse/HBASE-14632 > Project: HBase > Issue Type: Bug > Reporter: Ted Yu > Assignee: Ted Yu > Fix For: 2.0.0, 1.2.0, 1.3.0 > > Attachments: 14632-v1.txt, 14632-v2.txt > > > I noticed the following in one run of org.apache.hadoop.hbase.regionserver.TestSplitTransactionOnCluster-output.txt : > {code} > 2015-10-16 09:46:33,108 INFO [main] client.HBaseAdmin$10(1233): Started disable of testStoreFileReferenceCreationWhenSplitPolicySaysToSkipRangeCheck > 2015-10-16 09:46:33,108 INFO [B.defaultRpcServer.handler=4,queue=0,port=38813] master.HMaster(1908): Client=hbase/null disable testStoreFileReferenceCreationWhenSplitPolicySaysToSkipRangeCheck > 2015-10-16 09:46:33,223 DEBUG [B.defaultRpcServer.handler=4,queue=0,port=38813] procedure2.ProcedureExecutor(654): Procedure DisableTableProcedure (table=testStoreFileReferenceCreationWhenSplitPolicySaysToSkipRangeCheck) id=24 owner=hbase state=RUNNABLE:DISABLE_TABLE_PREPARE added to the store. > 2015-10-16 09:46:33,225 DEBUG [B.defaultRpcServer.handler=1,queue=0,port=38813] master.MasterRpcServices(1057): Checking to see if procedure is done procId=24 > 2015-10-16 09:46:33,230 DEBUG [ProcedureExecutor-22] lock.ZKInterProcessLockBase(226): Acquired a lock for /hbase/table-lock/ testStoreFileReferenceCreationWhenSplitPolicySaysToSkipRangeCheck/write-master:388130000000001 > 2015-10-16 09:46:33,320 WARN [RS:0;cn012:53683] regionserver.HStore(1910): StoreFile hdfs://localhost:40022/user/hbase/test-data/f09d7163-94f7-4218-b1b0-43dfc733a37b/data/ default/testStoreFileReferenceCreationWhenSplitPolicySaysToSkipRangeCheck/dc90661cebac678ac508ed98093fc3e9/f/fffae6d1a0234c1791d8098cbcdb2c5e has a null Reader > 2015-10-16 09:46:33,320 WARN [RS:0;cn012:53683] regionserver.HStore(1924): StoreFile hdfs://localhost:40022/user/hbase/test-data/f09d7163-94f7-4218-b1b0-43dfc733a37b/data/ default/testStoreFileReferenceCreationWhenSplitPolicySaysToSkipRangeCheck/dc90661cebac678ac508ed98093fc3e9/f/fffae6d1a0234c1791d8098cbcdb2c5e has a null Reader > 2015-10-16 09:46:33,321 WARN [RS:0;cn012:53683] regionserver.HStore(1924): StoreFile hdfs://localhost:40022/user/hbase/test-data/f09d7163-94f7-4218-b1b0-43dfc733a37b/data/ default/testStoreFileReferenceCreationWhenSplitPolicySaysToSkipRangeCheck/dc90661cebac678ac508ed98093fc3e9/f/fffae6d1a0234c1791d8098cbcdb2c5e has a null Reader > 2015-10-16 09:46:33,321 FATAL [RS:0;cn012:53683] regionserver.HRegionServer(2078): ABORTING region server cn012.l42scl.hortonworks.com,53683,1445013948320: Unhandled: null > java.lang.NullPointerException > at org.apache.hadoop.hbase.regionserver.HStore.getTotalStaticIndexSize(HStore.java:1936) > at org.apache.hadoop.hbase.regionserver.HRegionServer.createRegionLoad(HRegionServer.java:1470) > at org.apache.hadoop.hbase.regionserver.HRegionServer.buildServerLoad(HRegionServer.java:1206) > at org.apache.hadoop.hbase.regionserver.HRegionServer.tryRegionServerReport(HRegionServer.java:1149) > at org.apache.hadoop.hbase.regionserver.HRegionServer.run(HRegionServer.java:965) > at org.apache.hadoop.hbase.MiniHBaseCluster$MiniHBaseClusterRegionServer.runRegionServer(MiniHBaseCluster.java:156) > at org.apache.hadoop.hbase.MiniHBaseCluster$MiniHBaseClusterRegionServer.access$000(MiniHBaseCluster.java:108) > at org.apache.hadoop.hbase.MiniHBaseCluster$MiniHBaseClusterRegionServer$1.run(MiniHBaseCluster.java:140) > at java.security.AccessController.doPrivileged(Native Method) > at javax.security.auth.Subject.doAs(Subject.java:356) > at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1637) > at org.apache.hadoop.hbase.security.User$SecureHadoopUser.runAs(User.java:302) > at org.apache.hadoop.hbase.MiniHBaseCluster$MiniHBaseClusterRegionServer.run(MiniHBaseCluster.java:138) > at java.lang.Thread.run(Thread.java:745) > {code} > Here is related code: > {code} > public long getTotalStaticIndexSize() { > long size = 0; > for (StoreFile s : this.storeEngine.getStoreFileManager().getStorefiles()) { > size += s.getReader().getUncompressedDataIndexSize(); > } > return size; > } > {code} > Some methods, such as getStorefilesIndexSize(), guard against null Reader by checking r against null. > Same practice should be followed in other getters. -- This message was sent by Atlassian JIRA (v6.3.4#6332)