Class ForeignStorageInterface

class ForeignStorageInterface

Public Functions

ForeignStorageInterface()
~ForeignStorageInterface()
ForeignStorageInterface(const ForeignStorageInterface &other)
ForeignStorageInterface(ForeignStorageInterface &&other)
ForeignStorageInterface &operator=(const ForeignStorageInterface &other)
ForeignStorageInterface &operator=(ForeignStorageInterface &&other)
Data_Namespace::AbstractBufferMgr *lookupBufferManager(const int db_id, const int table_id)
void dropBufferManager(const int db_id, const int table_id)
void registerPersistentStorageInterface(std::unique_ptr<PersistentForeignStorageInterface> persistent_foreign_storage)
void prepareTable(const int db_id, TableDescriptor &td, std::list<ColumnDescriptor> &cols)

prepare table options and modify columns

void registerTable(Catalog_Namespace::Catalog *catalog, const TableDescriptor &td, const std::list<ColumnDescriptor> &cols)

ids are created

Private Members

std::unordered_map<std::string, std::unique_ptr<PersistentForeignStorageInterface>> persistent_storage_interfaces_
std::map<std::pair<int, int>, PersistentForeignStorageInterface *> table_persistent_storage_interface_map_
std::map<std::pair<int, int>, std::unique_ptr<ForeignStorageBufferMgr>> managers_map_
std::mutex persistent_storage_interfaces_mutex_