public class TestHBaseFsck extends Object
Modifier and Type | Class and Description |
---|---|
static class |
TestHBaseFsck.MasterSyncObserver |
Modifier and Type | Field and Description |
---|---|
TestName |
name |
Constructor and Description |
---|
TestHBaseFsck() |
Modifier and Type | Method and Description |
---|---|
static void |
createTable(HBaseTestingUtility testUtil,
HTableDescriptor htd,
byte[][] splitKeys) |
static void |
deleteTable(HBaseTestingUtility testUtil,
TableName tableName) |
void |
deleteTableDir(TableName table) |
void |
setUp() |
static void |
setUpBeforeClass() |
static void |
tearDownAfterClass() |
void |
testCheckTableLocks() |
void |
testCleanUpDaughtersNotInMetaAfterFailedSplit() |
void |
testContainedRegionOverlap()
This creates and fixes a bad table where a region is completely contained
by another region.
|
void |
testCoveredStartKey()
This creates and fixes a bad table where a region overlaps two regions --
a start key contained in another region and its end key is contained in
yet another region.
|
void |
testDegenerateRegions()
This creates and fixes a bad table with regions that has startkey == endkey
|
void |
testDupeRegion()
This create and fixes a bad table with regions that have a duplicate
start key
|
void |
testDupeStartKey()
This create and fixes a bad table with regions that have a duplicate
start key
|
void |
testErrorReporter()
Test pluggable error reporter.
|
void |
testFixAssignmentsAndNoHdfsChecking()
Test -noHdfsChecking option can detect and fix assignments issue.
|
void |
testFixAssignmentsWhenMETAinTransition() |
void |
testFixByTable()
This creates two tables and mess both of them and fix them one by one
|
void |
testFixHdfsHolesNotWorkingWithNoHdfsChecking()
Test -fixHdfsHoles doesn't work with -noHdfsChecking option,
and -noHdfsChecking can't detect orphan Hdfs region.
|
void |
testFixMetaNotWorkingWithNoHdfsChecking()
Test -noHdfsChecking option can detect region is not in meta but deployed.
|
void |
testHBaseFsck() |
void |
testHBaseFsckClean()
This creates a clean table and confirms that the table is clean.
|
void |
testHbckAfterRegionMerge() |
void |
testHbckFixOrphanTable() |
void |
testHbckThreadpooling()
Test thread pooling in the case where there are more regions than threads
|
void |
testHbckWithExcessReplica() |
void |
testHbckWithFewerReplica() |
void |
testHbckWithRegionReplica() |
void |
testHDFSRegioninfoMissing()
This creates and fixes a bad table with a missing region -- hole in meta
and data present but .regioinfino missing (an orphan hdfs region)in the fs.
|
void |
testLingeringReferenceFile()
Test fixing lingering reference file.
|
void |
testLingeringSplitParent()
A split parent in meta, in hdfs, and not deployed
|
void |
testMetaOffline() |
void |
testMissingFirstRegion()
This creates and fixes a bad table with a missing region which is the 1st region -- hole in
meta and data missing in the fs.
|
void |
testMissingLastRegion()
This creates and fixes a bad table with missing last region -- hole in meta and data missing in
the fs.
|
void |
testMissingRegionInfoQualifier()
Test mission REGIONINFO_QUALIFIER in hbase:meta
|
void |
testNoHdfsTable()
This creates entries in hbase:meta with no hdfs data.
|
void |
testNotInHdfs()
This creates and fixes a bad table with a region that is in meta but has
no deployment or data hdfs
|
void |
testNotInHdfsWithReplicas()
This creates and fixes a bad table with a region that is in meta but has
no deployment or data hdfs.
|
void |
testNotInMetaHole()
This creates fixes a bad table with a hole in meta.
|
void |
testNotInMetaOrDeployedHole()
This creates and fixes a bad table with a region that is missing meta and
not assigned to a region server.
|
void |
testNoVersionFile()
when the hbase.version file missing, It is fix the fault.
|
void |
testOrphanedTableZNode()
Test orphaned table ZNode (for table states)
|
void |
testOverlapAndOrphan()
This creates and fixes a bad table where a region is completely contained
by another region, and there is a hole (sort of like a bad split)
|
void |
testParallelHbck()
This test makes sure that parallel instances of Hbck is disabled.
|
void |
testParallelWithRetriesHbck()
This test makes sure that with enough retries both parallel instances
of hbck will be completed successfully.
|
void |
testQuarantineCorruptHFile()
This creates a table and then corrupts an hfile.
|
void |
testQuarantineMissingFamdir()
This creates a table and simulates the race situation where a concurrent compaction or split
has removed an colfam dir before the corruption checker got to it.
|
void |
testQuarantineMissingHFile()
This creates a table and simulates the race situation where a concurrent compaction or split
has removed an hfile after the corruption checker learned about it.
|
void |
testQuarantineMissingRegionDir()
This creates a table and simulates the race situation where a concurrent compaction or split
has removed a region dir before the corruption checker got to it.
|
void |
testReadOnlyProperty() |
void |
testRegionBoundariesCheck() |
void |
testRegionDeployedNotInHdfs()
This creates and fixes a bad table with a missing region which is the 1st region -- hole in
meta and data missing in the fs.
|
void |
testRegionHole()
This creates and fixes a bad table with a missing region -- hole in meta
and data missing in the fs.
|
void |
testRegionShouldNotBeDeployed()
The region is not deployed when the table is disabled.
|
void |
testSidelineOverlapRegion()
This creates and fixes a bad table where an overlap group of
3 regions.
|
void |
testSplitDaughtersNotInMeta()
Split crashed after write to hbase:meta finished for the parent region, but
failed to write daughters (pre HBASE-7721 codebase)
|
void |
testTableWithNoRegions() |
void |
testValidLingeringSplitParent()
Tests that LINGERING_SPLIT_PARENT is not erroneously reported for
valid cases where the daughters are there.
|
public void setUp()
public void testFixAssignmentsWhenMETAinTransition() throws Exception
Exception
public void testHBaseFsckClean() throws Exception
Exception
public void testHbckThreadpooling() throws Exception
Exception
public void testParallelHbck() throws Exception
Exception
public void testParallelWithRetriesHbck() throws Exception
Exception
public void testDupeStartKey() throws Exception
Exception
public void testHbckWithRegionReplica() throws Exception
Exception
public void testHbckWithExcessReplica() throws Exception
Exception
public void testDupeRegion() throws Exception
Exception
public void testDegenerateRegions() throws Exception
Exception
public void testContainedRegionOverlap() throws Exception
Exception
public void testSidelineOverlapRegion() throws Exception
Exception
public void testOverlapAndOrphan() throws Exception
Exception
public void testCoveredStartKey() throws Exception
Exception
public void testRegionHole() throws Exception
Exception
public void testHDFSRegioninfoMissing() throws Exception
Exception
public void testNotInMetaOrDeployedHole() throws Exception
Exception
public void testNotInMetaHole() throws Exception
Exception
public void testNotInHdfs() throws Exception
Exception
public void testNotInHdfsWithReplicas() throws Exception
Exception
public void testNoHdfsTable() throws Exception
Exception
public void deleteTableDir(TableName table) throws IOException
IOException
public void testNoVersionFile() throws Exception
Exception
public void testRegionShouldNotBeDeployed() throws Exception
Exception
public void testFixByTable() throws Exception
Exception
public void testLingeringSplitParent() throws Exception
Exception
public void testValidLingeringSplitParent() throws Exception
Exception
public void testSplitDaughtersNotInMeta() throws Exception
Exception
public void testMissingFirstRegion() throws Exception
Exception
public void testRegionDeployedNotInHdfs() throws Exception
Exception
public void testMissingLastRegion() throws Exception
Exception
public void testFixAssignmentsAndNoHdfsChecking() throws Exception
Exception
public void testFixMetaNotWorkingWithNoHdfsChecking() throws Exception
Exception
public void testFixHdfsHolesNotWorkingWithNoHdfsChecking() throws Exception
Exception
public void testQuarantineCorruptHFile() throws Exception
Exception
public void testQuarantineMissingHFile() throws Exception
Exception
public void testQuarantineMissingFamdir() throws Exception
Exception
public void testQuarantineMissingRegionDir() throws Exception
Exception
public void testLingeringReferenceFile() throws Exception
Exception
public void testMissingRegionInfoQualifier() throws Exception
Exception
public void testErrorReporter() throws Exception
Exception
public void testOrphanedTableZNode() throws Exception
Exception
public void testRegionBoundariesCheck() throws Exception
Exception
public void testCleanUpDaughtersNotInMetaAfterFailedSplit() throws Exception
Exception
public static void createTable(HBaseTestingUtility testUtil, HTableDescriptor htd, byte[][] splitKeys) throws Exception
Exception
public static void deleteTable(HBaseTestingUtility testUtil, TableName tableName) throws Exception
Exception