Class MobStoreScanner
java.lang.Object
org.apache.hadoop.hbase.regionserver.NonLazyKeyValueScanner
org.apache.hadoop.hbase.regionserver.NonReversedNonLazyKeyValueScanner
org.apache.hadoop.hbase.regionserver.StoreScanner
org.apache.hadoop.hbase.regionserver.MobStoreScanner
- All Implemented Interfaces:
Closeable,AutoCloseable,ChangedReadersObserver,InternalScanner,KeyValueScanner,Shipper
Scanner scans both the memstore and the MOB Store. Coalesce KeyValue stream into
List<KeyValue> for a single row.-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate booleanprivate static final org.slf4j.Loggerprivate final HMobStoreprivate booleanprivate booleanFields inherited from class org.apache.hadoop.hbase.regionserver.StoreScanner
currentScanners, DEFAULT_HBASE_CELLS_SCANNED_PER_HEARTBEAT_CHECK, HBASE_CELLS_SCANNED_PER_HEARTBEAT_CHECK, heap, LAZY_SEEK_ENABLED_BY_DEFAULT, memstoreOnlyReads, mixedReads, readPt, store, STORESCANNER_PARALLEL_SEEK_ENABLE, STORESCANNER_PREAD_MAX_BYTESFields inherited from interface org.apache.hadoop.hbase.regionserver.KeyValueScanner
NO_NEXT_INDEXED_KEY -
Constructor Summary
ConstructorsConstructorDescriptionMobStoreScanner(HStore store, ScanInfo scanInfo, Scan scan, NavigableSet<byte[]> columns, long readPt) -
Method Summary
Modifier and TypeMethodDescriptionvoidclose()Close the KeyValue scanner.private voidbooleannext(List<? super ExtendedCell> outResult, ScannerContext ctx) Firstly reads the cells from the HBase.voidshipped()Called after a batch of rows scanned and set to be returned to client.Methods inherited from class org.apache.hadoop.hbase.regionserver.StoreScanner
checkFlushed, checkScanOrder, enableLazySeekGlobally, getAllScannersForTesting, getEstimatedNumberOfKvsScanned, getNextIndexedKey, getReadPoint, hasSwitchedToStreamRead, hasUpdatedReaders, instrument, isScanUsePread, newKVHeap, next, peek, reopenAfterFlush, reseek, resetHasSwitchedToStreamRead, resetHasUpdatedReaders, resetKVHeap, seek, seekAsDirection, seekScanners, seekToNextRow, selectScannersFrom, trySkipToNextColumn, trySkipToNextRow, trySwitchToStreamRead, updateReadersMethods inherited from class org.apache.hadoop.hbase.regionserver.NonReversedNonLazyKeyValueScanner
backwardSeek, seekToLastRow, seekToPreviousRowMethods inherited from class org.apache.hadoop.hbase.regionserver.NonLazyKeyValueScanner
doRealSeek, enforceSeek, getFilePath, isFileScanner, realSeekDone, recordBlockSize, requestSeek, shouldUseScannerMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.apache.hadoop.hbase.regionserver.InternalScanner
nextMethods inherited from interface org.apache.hadoop.hbase.regionserver.KeyValueScanner
backwardSeek, enforceSeek, getFilePath, getScannerOrder, isFileScanner, realSeekDone, recordBlockSize, requestSeek, seekToLastRow, seekToPreviousRow, shouldUseScanner
-
Field Details
-
LOG
-
cacheMobBlocks
-
rawMobScan
-
readEmptyValueOnMobCellMiss
-
mobStore
-
referencedMobCells
-
-
Constructor Details
-
Method Details
-
next
Firstly reads the cells from the HBase. If the cell are a reference cell (which has the reference tag), the scanner need seek this cell from the mob file, and use the cell found from the mob file as the result.- Specified by:
nextin interfaceInternalScanner- Overrides:
nextin classStoreScanner- Parameters:
outResult- return output array. We will only add ExtendedCell to this list, but for CP users, you'd better just useRawCellasExtendedCellis IA.Private.- Returns:
- true if there are more rows, false if scanner is done
- Throws:
IOException
-
freeAllReferencedMobCells
- Throws:
IOException
-
shipped
Description copied from interface:ShipperCalled after a batch of rows scanned and set to be returned to client. Any in between cleanup can be done here.- Specified by:
shippedin interfaceShipper- Overrides:
shippedin classStoreScanner- Throws:
IOException
-
close
Description copied from interface:KeyValueScannerClose the KeyValue scanner.- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable- Specified by:
closein interfaceInternalScanner- Specified by:
closein interfaceKeyValueScanner- Overrides:
closein classStoreScanner
-