Provides a scanning interface to a CellCache. More...
#include <CellCacheScanner.h>
Classes | |
class | CellCacheEntry |
Public Types | |
typedef std::map< const SerializedKey, uint32_t > | CellCacheMap |
Public Member Functions | |
CellCacheScanner (CellCachePtr cellcache, ScanContext *scan_ctx) | |
virtual | ~CellCacheScanner () |
virtual void | forward () |
virtual bool | get (Key &key, ByteString &value) |
virtual int64_t | get_disk_read () |
Public Member Functions inherited from Hypertable::CellListScanner | |
CellListScanner () | |
CellListScanner (ScanContext *scan_ctx) | |
virtual | ~CellListScanner () |
ScanContext * | scan_context () |
void | add_disk_read (int64_t amount) |
Private Member Functions | |
bool | internal_get () |
void | internal_forward () |
void | load_entry_cache () |
Private Attributes | |
CellCache::CellMap::iterator | m_start_iter |
CellCache::CellMap::iterator | m_end_iter |
CellCache::CellMap::iterator | m_cur_iter |
CellCacheMap::iterator | m_delete_iter |
CellCachePtr | m_cell_cache_ptr |
std::mutex & | m_cell_cache_mutex |
CellCacheEntry | m_cur_entry |
std::vector< CellCacheEntry > | m_entry_cache |
size_t | m_entry_cache_next {} |
CellCacheMap | m_deletes |
bool | m_in_deletes {} |
bool | m_eos {} |
bool | m_keys_only {} |
Additional Inherited Members | |
Protected Attributes inherited from Hypertable::CellListScanner | |
uint64_t | m_disk_read {} |
ScanContext * | m_scan_context_ptr {} |
Provides a scanning interface to a CellCache.
Definition at line 34 of file CellCacheScanner.h.
typedef std::map<const SerializedKey, uint32_t> Hypertable::CellCacheScanner::CellCacheMap |
Definition at line 43 of file CellCacheScanner.h.
CellCacheScanner::CellCacheScanner | ( | CellCachePtr | cellcache, |
ScanContext * | scan_ctx | ||
) |
Figure out what potential start ROW and CF delete keys look like. We only need to worry about this if the scan starts in the middle of the row, ie the scan ctx has defined cell intervals. Further we only need to worry about CF deletes if this scan starts in the middle of a column family ie, the scan contains a qualified column.
Look for any DELETE_ROW records for this row and add them to the m_deletes map
Definition at line 37 of file CellCacheScanner.cc.
|
inlinevirtual |
Definition at line 37 of file CellCacheScanner.h.
|
virtual |
Implements Hypertable::CellListScanner.
Definition at line 148 of file CellCacheScanner.cc.
|
virtual |
Implements Hypertable::CellListScanner.
Definition at line 130 of file CellCacheScanner.cc.
|
inlinevirtual |
Implements Hypertable::CellListScanner.
Definition at line 41 of file CellCacheScanner.h.
|
private |
Definition at line 172 of file CellCacheScanner.cc.
|
private |
Definition at line 153 of file CellCacheScanner.cc.
|
private |
Definition at line 204 of file CellCacheScanner.cc.
|
private |
Definition at line 63 of file CellCacheScanner.h.
|
private |
Definition at line 62 of file CellCacheScanner.h.
|
private |
Definition at line 64 of file CellCacheScanner.h.
|
private |
Definition at line 60 of file CellCacheScanner.h.
|
private |
Definition at line 61 of file CellCacheScanner.h.
|
private |
Definition at line 67 of file CellCacheScanner.h.
|
private |
Definition at line 59 of file CellCacheScanner.h.
|
private |
Definition at line 65 of file CellCacheScanner.h.
|
private |
Definition at line 66 of file CellCacheScanner.h.
|
private |
Definition at line 69 of file CellCacheScanner.h.
|
private |
Definition at line 68 of file CellCacheScanner.h.
|
private |
Definition at line 70 of file CellCacheScanner.h.
|
private |
Definition at line 58 of file CellCacheScanner.h.