Class TestMetaFixer
java.lang.Object
org.apache.hadoop.hbase.master.janitor.TestMetaFixer
@Tag("org.apache.hadoop.hbase.testclassification.MasterTests") @Tag("org.apache.hadoop.hbase.testclassification.LargeTests")
public class TestMetaFixer
extends Object
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate voiddeleteRegion(org.apache.hadoop.hbase.master.MasterServices services, org.apache.hadoop.hbase.client.RegionInfo ri) private static org.apache.hadoop.hbase.client.RegionInfomakeOverlap(org.apache.hadoop.hbase.master.MasterServices services, org.apache.hadoop.hbase.client.RegionInfo a, org.apache.hadoop.hbase.client.RegionInfo b) static voidstatic voidvoidtestMergeWithMergedChildRegion(org.junit.jupiter.api.TestInfo testInfo) This test covers the case that one of merged parent regions is a merged child region that has not been GCed but there is no reference files anymore.voidvoidtestOneRegionTable(org.junit.jupiter.api.TestInfo testInfo) Just make sure running fixMeta does right thing for the case of a single-region Table where the region gets dropped.voidtestOverlap(org.junit.jupiter.api.TestInfo testInfo) private voidtestOverlapCommon(org.apache.hadoop.hbase.TableName tn) voidtestOverlapWithMergeOfNonContiguous(org.junit.jupiter.api.TestInfo testInfo) Make it so a big overlap spans many Regions, some of which are non-contiguous.voidtestOverlapWithSmallMergeCount(org.junit.jupiter.api.TestInfo testInfo) voidtestPlugsHoles(org.junit.jupiter.api.TestInfo testInfo) voidtestPlugsHolesWithReadReplica(org.junit.jupiter.api.TestInfo testInfo) private voidtestPlugsHolesWithReadReplicaInternal(org.apache.hadoop.hbase.TableName tn, int replicaCount)
-
Field Details
-
TEST_UTIL
-
-
Constructor Details
-
TestMetaFixer
public TestMetaFixer()
-
-
Method Details
-
setupBeforeClass
- Throws:
Exception
-
tearDownAfterClass
- Throws:
Exception
-
deleteRegion
private void deleteRegion(org.apache.hadoop.hbase.master.MasterServices services, org.apache.hadoop.hbase.client.RegionInfo ri) throws IOException - Throws:
IOException
-
testPlugsHolesWithReadReplicaInternal
private void testPlugsHolesWithReadReplicaInternal(org.apache.hadoop.hbase.TableName tn, int replicaCount) throws Exception - Throws:
Exception
-
testPlugsHoles
- Throws:
Exception
-
testPlugsHolesWithReadReplica
@Test public void testPlugsHolesWithReadReplica(org.junit.jupiter.api.TestInfo testInfo) throws Exception - Throws:
Exception
-
testOneRegionTable
Just make sure running fixMeta does right thing for the case of a single-region Table where the region gets dropped. There is nothing much we can do. We can't restore what we don't know about (at least from a read of hbase:meta).- Throws:
IOException
-
makeOverlap
private static org.apache.hadoop.hbase.client.RegionInfo makeOverlap(org.apache.hadoop.hbase.master.MasterServices services, org.apache.hadoop.hbase.client.RegionInfo a, org.apache.hadoop.hbase.client.RegionInfo b) throws IOException - Throws:
IOException
-
testOverlapCommon
- Throws:
Exception
-
testOverlap
- Throws:
Exception
-
testMultipleTableOverlaps
- Throws:
Exception
-
testOverlapWithSmallMergeCount
@Test public void testOverlapWithSmallMergeCount(org.junit.jupiter.api.TestInfo testInfo) throws Exception - Throws:
Exception
-
testMergeWithMergedChildRegion
@Test public void testMergeWithMergedChildRegion(org.junit.jupiter.api.TestInfo testInfo) throws Exception This test covers the case that one of merged parent regions is a merged child region that has not been GCed but there is no reference files anymore. In this case, it will kick off a GC procedure, but no merge will happen.- Throws:
Exception
-
testOverlapWithMergeOfNonContiguous
@Test public void testOverlapWithMergeOfNonContiguous(org.junit.jupiter.api.TestInfo testInfo) throws Exception Make it so a big overlap spans many Regions, some of which are non-contiguous. Make it so we can fix this condition. HBASE-24247- Throws:
Exception
-