20 #include <unordered_set>
32 namespace foreign_storage {
57 const std::string& file_path,
85 std::vector<std::pair<const ColumnDescriptor*, StringDictionary*>>
110 std::vector<std::pair<const ColumnDescriptor*, StringDictionary*>>
std::set< std::string > getAllFilePaths()
std::shared_mutex row_group_interval_tracker_mutex_
std::shared_ptr< arrow::fs::FileSystem > file_system_
void setNumThreads(const int num_threads)
std::unique_ptr< AbstractRowGroupIntervalTracker > row_group_interval_tracker_
std::unique_ptr< ForeignTableSchema > schema_
void restoreDataWrapperInternals(const std::string &file_path, const ChunkMetadataVector &chunk_metadata_vector) override
std::map< ChunkKey, AbstractBuffer * > ChunkToBufferMap
std::shared_mutex string_dictionaries_per_column_mutex_
std::vector< std::pair< const ColumnDescriptor *, StringDictionary * > > getStringDictionaries() const
ParallelismLevel getCachedParallelismLevel() const override
virtual ~AbstractRowGroupIntervalTracker()=default
bool isRestored() const override
void populateChunkBuffers(const ChunkToBufferMap &required_buffers, const ChunkToBufferMap &optional_buffers, AbstractBuffer *delete_buffer) override
void populateChunkMetadata(ChunkMetadataVector &chunk_metadata_vector) override
An AbstractBuffer is a unit of data management for a data manager.
std::string getSerializedDataWrapper() const override
virtual std::optional< RowGroupInterval > getNextRowGroupInterval()=0
const ForeignTable * foreign_table_
std::unique_ptr< FileReaderMap > file_reader_cache_
int getMaxNumUsefulThreads() const
ParallelismLevel getNonCachedParallelismLevel() const override
std::shared_timed_mutex shared_mutex
std::unique_ptr< import_export::ImportBatchResult > getNextImportBatch()
std::vector< std::pair< const ColumnDescriptor *, StringDictionary * > > string_dictionaries_per_column_