Provides ability to efficiently scan over a portion of a cell store. More...
#include <CellStoreScannerIntervalReadahead.h>
Public Types | |
typedef IndexT::iterator | IndexIteratorT |
Public Member Functions | |
CellStoreScannerIntervalReadahead (CellStorePtr &cellstore, IndexT *index, SerializedKey start_key, SerializedKey end_key, ScanContext *scan_ctx) | |
virtual | ~CellStoreScannerIntervalReadahead () |
virtual void | forward () |
virtual bool | get (Key &key, ByteString &value) |
Public Member Functions inherited from Hypertable::CellStoreScannerInterval | |
CellStoreScannerInterval () | |
virtual | ~CellStoreScannerInterval () |
int64_t | get_disk_read () |
Private Member Functions | |
bool | fetch_next_block_readahead (bool eob=false) |
This method fetches the 'next' compressed block of key/value pairs from the underlying CellStore. More... | |
Private Attributes | |
CellStorePtr | m_cellstore |
BlockInfo | m_block |
Key | m_key |
SerializedKey | m_end_key |
ByteString | m_cur_value |
BlockCompressionCodec * | m_zcodec {} |
KeyDecompressor * | m_key_decompressor {} |
int32_t | m_fd {-1} |
int64_t | m_offset {} |
int64_t | m_end_offset {} |
bool | m_check_for_range_end {} |
bool | m_eos {} |
ScanContext * | m_scan_ctx {} |
uint32_t | m_oflags {} |
Additional Inherited Members | |
Protected Attributes inherited from Hypertable::CellStoreScannerInterval | |
uint64_t | m_disk_read |
Provides ability to efficiently scan over a portion of a cell store.
IndexT | Type of block index |
Definition at line 47 of file CellStoreScannerIntervalReadahead.h.
typedef IndexT::iterator Hypertable::CellStoreScannerIntervalReadahead< IndexT >::IndexIteratorT |
Definition at line 50 of file CellStoreScannerIntervalReadahead.h.
CellStoreScannerIntervalReadahead::CellStoreScannerIntervalReadahead | ( | CellStorePtr & | cellstore, |
IndexT * | index, | ||
SerializedKey | start_key, | ||
SerializedKey | end_key, | ||
ScanContext * | scan_ctx | ||
) |
Seek to start of range in block
End of range check
Column family check
Definition at line 50 of file CellStoreScannerIntervalReadahead.cc.
|
virtual |
Definition at line 148 of file CellStoreScannerIntervalReadahead.cc.
|
private |
This method fetches the 'next' compressed block of key/value pairs from the underlying CellStore.
Preconditions required to call this method:
eob | true if at end of block |
Read header
take ownership of inflate buffer
Definition at line 237 of file CellStoreScannerIntervalReadahead.cc.
|
virtual |
Column family check
Implements Hypertable::CellStoreScannerInterval.
Definition at line 181 of file CellStoreScannerIntervalReadahead.cc.
|
virtual |
Implements Hypertable::CellStoreScannerInterval.
Definition at line 167 of file CellStoreScannerIntervalReadahead.cc.
|
private |
Definition at line 63 of file CellStoreScannerIntervalReadahead.h.
|
private |
Definition at line 62 of file CellStoreScannerIntervalReadahead.h.
|
private |
Definition at line 72 of file CellStoreScannerIntervalReadahead.h.
|
private |
Definition at line 66 of file CellStoreScannerIntervalReadahead.h.
|
private |
Definition at line 65 of file CellStoreScannerIntervalReadahead.h.
|
private |
Definition at line 71 of file CellStoreScannerIntervalReadahead.h.
|
private |
Definition at line 73 of file CellStoreScannerIntervalReadahead.h.
|
private |
Definition at line 69 of file CellStoreScannerIntervalReadahead.h.
|
private |
Definition at line 64 of file CellStoreScannerIntervalReadahead.h.
|
private |
Definition at line 68 of file CellStoreScannerIntervalReadahead.h.
|
private |
Definition at line 70 of file CellStoreScannerIntervalReadahead.h.
|
private |
Definition at line 75 of file CellStoreScannerIntervalReadahead.h.
|
private |
Definition at line 74 of file CellStoreScannerIntervalReadahead.h.
|
private |
Definition at line 67 of file CellStoreScannerIntervalReadahead.h.