Class PersistentStorageMgr¶
-
class
PersistentStorageMgr: public AbstractBufferMgr¶ Public Functions
-
PersistentStorageMgr(const std::string &data_dir, const size_t num_reader_threads, const File_Namespace::DiskCacheConfig &disk_cache_config)¶
-
AbstractBuffer *
createBuffer(const ChunkKey &chunk_key, const size_t page_size, const size_t initial_size)¶
-
void
deleteBuffer(const ChunkKey &chunk_key, const bool purge)¶
-
void
deleteBuffersWithPrefix(const ChunkKey &chunk_key_prefix, const bool purge)¶
-
AbstractBuffer *
getBuffer(const ChunkKey &chunk_key, const size_t num_bytes)¶
-
void
fetchBuffer(const ChunkKey &chunk_key, AbstractBuffer *destination_buffer, const size_t num_bytes)¶
-
AbstractBuffer *
putBuffer(const ChunkKey &chunk_key, AbstractBuffer *source_buffer, const size_t num_bytes)¶
-
void
getChunkMetadataVecForKeyPrefix(ChunkMetadataVector &chunk_metadata, const ChunkKey &chunk_key_prefix)¶
-
bool
isBufferOnDevice(const ChunkKey &chunk_key)¶
-
std::string
printSlabs()¶
-
size_t
getMaxSize()¶
-
size_t
getInUseSize()¶
-
size_t
getAllocated()¶
-
bool
isAllocationCapped()¶
-
void
checkpoint()¶
-
void
checkpoint(const int db_id, const int tb_id)¶
-
AbstractBuffer *
alloc(const size_t num_bytes)¶
-
void
free(AbstractBuffer *buffer)¶
-
MgrType
getMgrType()¶
-
std::string
getStringMgrType()¶
-
size_t
getNumChunks()¶
-
void
removeTableRelatedDS(const int db_id, const int table_id)¶
-
File_Namespace::GlobalFileMgr *
getGlobalFileMgr() const¶
-
foreign_storage::ForeignStorageMgr *
getForeignStorageMgr() const¶
-
foreign_storage::ForeignStorageCache *
getDiskCache() const¶
-
const File_Namespace::DiskCacheConfig
getDiskCacheConfig() const¶
-
const std::shared_ptr<ForeignStorageInterface>
getForeignStorageInterface() const¶
Protected Functions
-
bool
isForeignStorage(const ChunkKey &chunk_key) const¶
-
AbstractBufferMgr *
getStorageMgrForTableKey(const ChunkKey &table_key) const¶
-
bool
isChunkPrefixCacheable(const ChunkKey &chunk_prefix) const¶
-
int
recoverDataWrapperIfCachedAndGetHighestFragId(const ChunkKey &table_key)¶
Protected Attributes
-
std::unique_ptr<File_Namespace::GlobalFileMgr>
global_file_mgr_¶
-
std::unique_ptr<foreign_storage::ForeignStorageMgr>
foreign_storage_mgr_¶
-
std::unique_ptr<foreign_storage::ForeignStorageCache>
disk_cache_¶
-
File_Namespace::DiskCacheConfig
disk_cache_config_¶
-
std::shared_ptr<ForeignStorageInterface>
fsi_¶
-