Package org.apache.hadoop.hbase.util
Class HbckTableInfo.IntegrityFixSuggester
java.lang.Object
org.apache.hadoop.hbase.util.hbck.TableIntegrityErrorHandlerImpl
org.apache.hadoop.hbase.util.HbckTableInfo.IntegrityFixSuggester
- All Implemented Interfaces:
TableIntegrityErrorHandler
- Direct Known Subclasses:
HbckTableInfo.HDFSIntegrityFixer
- Enclosing class:
- HbckTableInfo
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidCallback for handling a region that has the same start and end key.voidCallback for handling two regions that have the same start key.voidhandleHoleInRegionChain(byte[] holeStart, byte[] holeStop) Callback for handling a region hole between two keys.voidCallback for handling two reigons that overlap in some arbitrary way.voidhandleRegionEndKeyNotEmpty(byte[] curEndKey) Callback for handling case where a Table has a last region that does not have an empty end key.voidCallback for handling case where a Table has a first region that does not have an empty start key.voidhandleSplit(HbckRegionInfo r1, HbckRegionInfo r2) Callback for handling two regions that have the same regionID a specific case of a splitMethods inherited from class org.apache.hadoop.hbase.util.hbck.TableIntegrityErrorHandlerImpl
getTableInfo, handleOverlapGroup, setTableInfo
-
Field Details
-
errors
-
-
Constructor Details
-
IntegrityFixSuggester
IntegrityFixSuggester(HbckTableInfo ti, HbckErrorReporter errors)
-
-
Method Details
-
handleRegionStartKeyNotEmpty
Description copied from class:TableIntegrityErrorHandlerImplCallback for handling case where a Table has a first region that does not have an empty start key.- Specified by:
handleRegionStartKeyNotEmptyin interfaceTableIntegrityErrorHandler- Overrides:
handleRegionStartKeyNotEmptyin classTableIntegrityErrorHandlerImpl- Parameters:
hi- An HbckRegionInfo of the second region in a table. This should have a non-empty startkey, and can be used to fabricate a first region that has an empty start key.- Throws:
IOException
-
handleRegionEndKeyNotEmpty
Description copied from class:TableIntegrityErrorHandlerImplCallback for handling case where a Table has a last region that does not have an empty end key.- Specified by:
handleRegionEndKeyNotEmptyin interfaceTableIntegrityErrorHandler- Overrides:
handleRegionEndKeyNotEmptyin classTableIntegrityErrorHandlerImpl- Parameters:
curEndKey- The end key of the current last region. There should be a new region with start key as this and an empty end key.- Throws:
IOException
-
handleDegenerateRegion
Description copied from class:TableIntegrityErrorHandlerImplCallback for handling a region that has the same start and end key.- Specified by:
handleDegenerateRegionin interfaceTableIntegrityErrorHandler- Overrides:
handleDegenerateRegionin classTableIntegrityErrorHandlerImpl- Parameters:
hi- An HbckRegionInfo for a degenerate key.- Throws:
IOException
-
handleDuplicateStartKeys
Description copied from class:TableIntegrityErrorHandlerImplCallback for handling two regions that have the same start key. This is a specific case of a region overlap.- Specified by:
handleDuplicateStartKeysin interfaceTableIntegrityErrorHandler- Overrides:
handleDuplicateStartKeysin classTableIntegrityErrorHandlerImpl- Parameters:
r1- one of the overlapping HbckRegionInfor2- the other overlapping HbckRegionInfo- Throws:
IOException
-
handleSplit
Description copied from interface:TableIntegrityErrorHandlerCallback for handling two regions that have the same regionID a specific case of a split- Parameters:
r1- one of the overlapping HbckRegionInfor2- the other overlapping HbckRegionInfo- Throws:
IOException
-
handleOverlapInRegionChain
Description copied from class:TableIntegrityErrorHandlerImplCallback for handling two reigons that overlap in some arbitrary way. This is a specific case of region overlap, and called for each possible pair. If two regions have the same start key, the handleDuplicateStartKeys method is called.- Specified by:
handleOverlapInRegionChainin interfaceTableIntegrityErrorHandler- Overrides:
handleOverlapInRegionChainin classTableIntegrityErrorHandlerImpl- Parameters:
hi1- one of the overlapping HbckRegionInfohi2- the other overlapping HbckRegionInfo- Throws:
IOException
-
handleHoleInRegionChain
Description copied from class:TableIntegrityErrorHandlerImplCallback for handling a region hole between two keys.- Specified by:
handleHoleInRegionChainin interfaceTableIntegrityErrorHandler- Overrides:
handleHoleInRegionChainin classTableIntegrityErrorHandlerImpl- Parameters:
holeStart- key at the beginning of the region holeholeStop- key at the end of the region hole- Throws:
IOException
-