Class RowSetMemoryOwner¶
-
class
RowSetMemoryOwner: public SimpleAllocator, private noncopyable¶ Handles allocations and outputs for all stages in a query, either explicitly or via a managed allocator object
Public Functions
-
RowSetMemoryOwner(const size_t arena_block_size, const size_t num_kernel_threads = 0)¶
-
int8_t *
allocate(const size_t num_bytes, const size_t thread_idx = 0)¶
-
int8_t *
allocateCountDistinctBuffer(const size_t num_bytes, const size_t thread_idx = 0)¶
-
void
addCountDistinctBuffer(int8_t *count_distinct_buffer, const size_t bytes, const bool physical_buffer)¶
-
void
addCountDistinctSet(CountDistinctSet *count_distinct_set)¶
-
void
addGroupByBuffer(int64_t *group_by_buffer)¶
-
void
addVarlenBuffer(void *varlen_buffer)¶
-
void
addVarlenInputBuffer(Data_Namespace::AbstractBuffer *buffer)¶ Adds a GPU buffer containing a variable length input column. Variable length inputs on GPU are referenced in output projected targets and should not be freed until the query results have been resolved.
-
std::string *
addString(const std::string &str)¶
-
std::vector<int64_t> *
addArray(const std::vector<int64_t> &arr)¶
-
const StringDictionaryProxy::IdMap *
addStringProxyIntersectionTranslationMap(const StringDictionaryProxy *source_proxy, const StringDictionaryProxy *dest_proxy)¶
-
const StringDictionaryProxy::IdMap *
addStringProxyUnionTranslationMap(const StringDictionaryProxy *source_proxy, StringDictionaryProxy *dest_proxy)¶
-
StringDictionaryProxy *
getStringDictProxy(const int dict_id) const¶
-
StringDictionaryProxy *
getOrAddStringDictProxy(const int dict_id_in, const bool with_generation, const Catalog_Namespace::Catalog *catalog)¶
-
StringDictionaryProxy *
getLiteralStringDictProxy() const¶
-
const StringDictionaryProxy::IdMap *
getOrAddStringProxyTranslationMap(const int source_dict_id_in, const int dest_dict_id_in, const bool with_generation, const StringTranslationType translation_map_type, const Catalog_Namespace::Catalog *catalog)¶
-
void
addColBuffer(const void *col_buffer)¶
-
~RowSetMemoryOwner()¶
-
std::shared_ptr<RowSetMemoryOwner>
cloneStrDictDataOnly()¶
-
void
setDictionaryGenerations(StringDictionaryGenerations generations)¶
-
StringDictionaryGenerations &
getStringDictionaryGenerations()¶
-
quantile::TDigest *
nullTDigest(double const q)¶
Private Members
-
std::vector<CountDistinctBitmapBuffer>
count_distinct_bitmaps_¶
-
std::vector<CountDistinctSet *>
count_distinct_sets_¶
-
std::vector<int64_t *>
group_by_buffers_¶
-
std::vector<void *>
varlen_buffers_¶
-
std::list<std::string>
strings_¶
-
std::list<std::vector<int64_t>>
arrays_¶
-
std::unordered_map<int, std::shared_ptr<StringDictionaryProxy>>
str_dict_proxy_owned_¶
-
std::map<std::pair<int, int>, StringDictionaryProxy::IdMap>
str_proxy_intersection_translation_maps_owned_¶
-
std::map<std::pair<int, int>, StringDictionaryProxy::IdMap>
str_proxy_union_translation_maps_owned_¶
-
std::shared_ptr<StringDictionaryProxy>
lit_str_dict_proxy_¶
-
StringDictionaryGenerations
string_dictionary_generations_¶
-
std::vector<void *>
col_buffers_¶
-
std::vector<Data_Namespace::AbstractBuffer *>
varlen_input_buffers_¶
-
std::vector<std::unique_ptr<quantile::TDigest>>
t_digests_¶
-
size_t
arena_block_size_¶
-
std::mutex
state_mutex_¶
Friends
-
friend
RowSetMemoryOwner::ResultSet
-
friend
RowSetMemoryOwner::QueryExecutionContext
-
struct
CountDistinctBitmapBuffer¶
-