You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hbase.apache.org by "Enis Soztutar (JIRA)" <ji...@apache.org> on 2013/05/08 02:17:16 UTC

[jira] [Created] (HBASE-8505) References to split daughters should not be deleted separately from parent META entry

Enis Soztutar created HBASE-8505:
------------------------------------

             Summary: References to split daughters should not be deleted separately from parent META entry
                 Key: HBASE-8505
                 URL: https://issues.apache.org/jira/browse/HBASE-8505
             Project: HBase
          Issue Type: Bug
          Components: regionserver
            Reporter: Enis Soztutar
            Assignee: Enis Soztutar
             Fix For: 0.98.0, 0.94.8, 0.95.1


In CatalogJanitor, we clean up the parent regions whose daughters does not have any more references to their parent regions. In doing so, we do two Delete's one for removing the split daughter columns, and the other for removing the row. 

The first one seems unnecessary, and causes NPE from concurrent MetaScanner. 

Stack trace:
{code}
2013-05-07 04:49:40,828|machine|INFO|Exception in thread "main" java.lang.NullPointerException
2013-05-07 04:49:40,828|machine|INFO|at org.apache.hadoop.hbase.util.Writables.getWritable(Writables.java:103)
2013-05-07 04:49:40,828|machine|INFO|at org.apache.hadoop.hbase.util.Writables.getHRegionInfo(Writables.java:147)
2013-05-07 04:49:40,829|machine|INFO|at org.apache.hadoop.hbase.client.MetaScanner$BlockingMetaScannerVisitor.processRow(MetaScanner.java:406)
2013-05-07 04:49:40,829|machine|INFO|at org.apache.hadoop.hbase.client.MetaScanner$TableMetaScannerVisitor.processRow(MetaScanner.java:487)
2013-05-07 04:49:40,830|machine|INFO|at org.apache.hadoop.hbase.client.MetaScanner.metaScan(MetaScanner.java:224)
2013-05-07 04:49:40,830|machine|INFO|at org.apache.hadoop.hbase.client.MetaScanner.access$000(MetaScanner.java:54)
2013-05-07 04:49:40,830|machine|INFO|at org.apache.hadoop.hbase.client.MetaScanner$1.connect(MetaScanner.java:133)
2013-05-07 04:49:40,831|machine|INFO|at org.apache.hadoop.hbase.client.MetaScanner$1.connect(MetaScanner.java:130)
2013-05-07 04:49:40,831|machine|INFO|at org.apache.hadoop.hbase.client.HConnectionManager.execute(HConnectionManager.java:384)
2013-05-07 04:49:40,831|machine|INFO|at org.apache.hadoop.hbase.client.MetaScanner.metaScan(MetaScanner.java:130)
2013-05-07 04:49:40,832|machine|INFO|at org.apache.hadoop.hbase.client.MetaScanner.metaScan(MetaScanner.java:105)
2013-05-07 04:49:40,832|machine|INFO|at org.apache.hadoop.hbase.client.MetaScanner.metaScan(MetaScanner.java:83)
2013-05-07 04:49:40,832|machine|INFO|at org.apache.hadoop.hbase.client.MetaScanner.allTableRegions(MetaScanner.java:323)
2013-05-07 04:49:40,833|machine|INFO|at org.apache.hadoop.hbase.client.HTable.getRegionLocations(HTable.java:485)
2013-05-07 04:49:40,833|machine|INFO|at org.apache.hadoop.hbase.client.HTable.getStartEndKeys(HTable.java:438)
{code}

Master is doing the CatalogJanitor concurrently:
{code}
2013-05-07 04:49:40,636 INFO org.apache.hadoop.hbase.catalog.MetaEditor: Deleted daughters references, qualifier=splitA and qualifier=splitB, from parent IntegrationTestBigLinkedList,\x07\xFB\x98\xB7a\x89\xF5\xE6,1367898577620.4ef1329ff0e8911db998ac8ccd32108d.
2013-05-07 04:49:40,666 INFO org.apache.hadoop.hbase.catalog.MetaEditor: Deleted region IntegrationTestBigLinkedList,\x07\xFB\x98\xB7a\x89\xF5\xE6,1367898577620.4ef1329ff0e8911db998ac8ccd32108d. from META
2013-05-07 04:49:40,690 INFO org.apache.hadoop.hbase.catalog.MetaEditor: Deleted daughters references, qualifier=splitA and qualifier=splitB, from parent IntegrationTestBigLinkedList,\x0B\xF8n\xEA\xD3\xAA\xA9\x92,1367898577620.b502376df2623cb0be3f0c1664d799a6.
2013-05-07 04:49:40,716 INFO org.apache.hadoop.hbase.catalog.MetaEditor: Deleted region IntegrationTestBigLinkedList,\x0B\xF8n\xEA\xD3\xAA\xA9\x92,1367898577620.b502376df2623cb0be3f0c1664d799a6. from META
2013-05-07 04:49:40,742 INFO org.apache.hadoop.hbase.catalog.MetaEditor: Deleted daughters references, qualifier=splitA and qualifier=splitB, from parent IntegrationTestBigLinkedList,\x17\xF5\x11\xB9\xE3\xDB)\x0C,1367898541729.ec2df58fafb823cec6e793ba35e2241d.
{code}

This is critical for 0.94, but not for 0.95 and trunk due to HBASE-7721. 

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira