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
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
Callback for handling a region that has the same start and end key.void
Callback for handling two regions that have the same start key.void
handleHoleInRegionChain
(byte[] holeStart, byte[] holeStop) Callback for handling a region hole between two keys.void
Callback for handling two reigons that overlap in some arbitrary way.void
handleRegionEndKeyNotEmpty
(byte[] curEndKey) Callback for handling case where a Table has a last region that does not have an empty end key.void
Callback for handling case where a Table has a first region that does not have an empty start key.void
handleSplit
(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:TableIntegrityErrorHandlerImpl
Callback for handling case where a Table has a first region that does not have an empty start key.- Specified by:
handleRegionStartKeyNotEmpty
in interfaceTableIntegrityErrorHandler
- Overrides:
handleRegionStartKeyNotEmpty
in 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:TableIntegrityErrorHandlerImpl
Callback for handling case where a Table has a last region that does not have an empty end key.- Specified by:
handleRegionEndKeyNotEmpty
in interfaceTableIntegrityErrorHandler
- Overrides:
handleRegionEndKeyNotEmpty
in 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:TableIntegrityErrorHandlerImpl
Callback for handling a region that has the same start and end key.- Specified by:
handleDegenerateRegion
in interfaceTableIntegrityErrorHandler
- Overrides:
handleDegenerateRegion
in classTableIntegrityErrorHandlerImpl
- Parameters:
hi
- An HbckRegionInfo for a degenerate key.- Throws:
IOException
-
handleDuplicateStartKeys
Description copied from class:TableIntegrityErrorHandlerImpl
Callback for handling two regions that have the same start key. This is a specific case of a region overlap.- Specified by:
handleDuplicateStartKeys
in interfaceTableIntegrityErrorHandler
- Overrides:
handleDuplicateStartKeys
in classTableIntegrityErrorHandlerImpl
- Parameters:
r1
- one of the overlapping HbckRegionInfor2
- the other overlapping HbckRegionInfo- Throws:
IOException
-
handleSplit
Description copied from interface:TableIntegrityErrorHandler
Callback 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:TableIntegrityErrorHandlerImpl
Callback 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:
handleOverlapInRegionChain
in interfaceTableIntegrityErrorHandler
- Overrides:
handleOverlapInRegionChain
in classTableIntegrityErrorHandlerImpl
- Parameters:
hi1
- one of the overlapping HbckRegionInfohi2
- the other overlapping HbckRegionInfo- Throws:
IOException
-
handleHoleInRegionChain
Description copied from class:TableIntegrityErrorHandlerImpl
Callback for handling a region hole between two keys.- Specified by:
handleHoleInRegionChain
in interfaceTableIntegrityErrorHandler
- Overrides:
handleHoleInRegionChain
in classTableIntegrityErrorHandlerImpl
- Parameters:
holeStart
- key at the beginning of the region holeholeStop
- key at the end of the region hole- Throws:
IOException
-