Class foreign_storage::CachingForeignStorageMgr¶
-
class
CachingForeignStorageMgr
: public foreign_storage::ForeignStorageMgr¶ Public Functions
-
CachingForeignStorageMgr
(ForeignStorageCache *cache)¶
-
void
fetchBuffer
(const ChunkKey &chunk_key, AbstractBuffer *destination_buffer, const size_t num_bytes)¶
-
void
getChunkMetadataVecForKeyPrefix
(ChunkMetadataVector &chunk_metadata, const ChunkKey &chunk_key_prefix)¶
-
void
getChunkMetadataVecFromDataWrapper
(ChunkMetadataVector &chunk_metadata, const ChunkKey &chunk_key_prefix)¶
-
void
removeTableRelatedDS
(const int db_id, const int table_id)¶
-
void
refreshTable
(const ChunkKey &table_key, const bool evict_cached_entries)¶
-
bool
createDataWrapperIfNotExists
(const ChunkKey &chunk_key)¶
Private Functions
-
void
refreshTableInCache
(const ChunkKey &table_key)¶
-
int
getHighestCachedFragId
(const ChunkKey &table_key)¶
-
void
refreshAppendTableInCache
(const ChunkKey &table_key, const std::vector<ChunkKey> &old_chunk_keys)¶
-
void
refreshNonAppendTableInCache
(const ChunkKey &table_key, const std::vector<ChunkKey> &old_chunk_keys)¶
-
void
refreshChunksInCacheByFragment
(const std::vector<ChunkKey> &old_chunk_keys, int last_frag_id)¶
-
void
populateChunkBuffersSafely
(ForeignDataWrapper &data_wrapper, ChunkToBufferMap &required_buffers, ChunkToBufferMap &optional_buffers)¶
-
void
eraseDataWrapper
(const ChunkKey &key)¶
-
void
clearTable
(const ChunkKey &table_key)¶
-
size_t
maxFetchSize
(int32_t db_id) const¶
-
bool
hasMaxFetchSize
() const¶
-
std::set<ChunkKey>
getOptionalKeysWithinSizeLimit
(const ChunkKey &chunk_key, const std::set<ChunkKey, decltype(set_comp) *> &same_fragment_keys, const std::set<ChunkKey, decltype(set_comp) *> &diff_fragment_keys) const¶
-
size_t
getBufferSize
(const ChunkKey &key) const¶
-
size_t
getRequiredBuffersSize
(const ChunkKey &chunk_key) const¶
Private Members
-
ForeignStorageCache *
disk_cache_
¶
-