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