Class ResultSetStorage

class ResultSetStorage

Public Functions

void reduce(const ResultSetStorage &that, const std::vector<std::string> &serialized_varlen_buffer, const ReductionCode &reduction_code, const size_t executor_id) const
void rewriteAggregateBufferOffsets(const std::vector<std::string> &serialized_varlen_buffer) const
int8_t *getUnderlyingBuffer() const
size_t getEntryCount() const
template<class KeyType>
void moveEntriesToBuffer(int8_t *new_buff, const size_t new_entry_count) const
template<class KeyType>
void moveOneEntryToBuffer(const size_t entry_index, int64_t *new_buff_i64, const size_t new_entry_count, const size_t key_count, const size_t row_qw_count, const int64_t *src_buff, const size_t key_byte_width) const
void updateEntryCount(const size_t new_entry_count)
void reduceOneApproxQuantileSlot(int8_t *this_ptr1, const int8_t *that_ptr1, const size_t target_logical_idx, const ResultSetStorage &that) const

Public Static Functions

bool reduceSingleRow(const int8_t *row_ptr, const int8_t warp_count, const bool is_columnar, const bool replace_bitmap_ptr_with_bitmap_sz, std::vector<int64_t> &agg_vals, const QueryMemoryDescriptor &query_mem_desc, const std::vector<TargetInfo> &targets, const std::vector<int64_t> &agg_init_vals)

Private Functions

ResultSetStorage(const std::vector<TargetInfo> &targets, const QueryMemoryDescriptor &query_mem_desc, int8_t *buff, const bool buff_is_provided)
void reduceEntriesNoCollisionsColWise(int8_t *this_buff, const int8_t *that_buff, const ResultSetStorage &that, const size_t start_index, const size_t end_index, const std::vector<std::string> &serialized_varlen_buffer, const size_t executor_id) const
void copyKeyColWise(const size_t entry_idx, int8_t *this_buff, const int8_t *that_buff) const
bool isEmptyEntry(const size_t entry_idx, const int8_t *buff) const
bool isEmptyEntry(const size_t entry_idx) const
bool isEmptyEntryColumnar(const size_t entry_idx, const int8_t *buff) const
void reduceOneEntryBaseline(int8_t *this_buff, const int8_t *that_buff, const size_t i, const size_t that_entry_count, const ResultSetStorage &that) const
void reduceOneEntrySlotsBaseline(int64_t *this_entry_slots, const int64_t *that_buff, const size_t that_entry_idx, const size_t that_entry_count, const ResultSetStorage &that) const
void initializeBaselineValueSlots(int64_t *this_entry_slots) const
void reduceOneSlotBaseline(int64_t *this_buff, const size_t this_slot, const int64_t *that_buff, const size_t that_entry_count, const size_t that_slot, const TargetInfo &target_info, const size_t target_logical_idx, const size_t target_slot_idx, const size_t init_agg_val_idx, const ResultSetStorage &that) const
void reduceOneSlotSingleValue(int8_t *this_ptr1, const TargetInfo &target_info, const size_t target_slot_idx, const size_t init_agg_val_idx, const int8_t *that_ptr1) const
void reduceOneSlot(int8_t *this_ptr1, int8_t *this_ptr2, const int8_t *that_ptr1, const int8_t *that_ptr2, const TargetInfo &target_info, const size_t target_logical_idx, const size_t target_slot_idx, const size_t init_agg_val_idx, const ResultSetStorage &that, const size_t first_slot_idx_for_target, const std::vector<std::string> &serialized_varlen_buffer) const
void reduceOneCountDistinctSlot(int8_t *this_ptr1, const int8_t *that_ptr1, const size_t target_logical_idx, const ResultSetStorage &that) const
void fillOneEntryRowWise(const std::vector<int64_t> &entry)
void fillOneEntryColWise(const std::vector<int64_t> &entry)
void initializeRowWise() const
void initializeColWise() const
const VarlenOutputInfo *getVarlenOutputInfo() const
void addCountDistinctSetPointerMapping(const int64_t remote_ptr, const int64_t ptr)
int64_t mappedPtr(const int64_t remote_ptr) const
size_t binSearchRowCount() const

Private Members

const std::vector<TargetInfo> targets_
QueryMemoryDescriptor query_mem_desc_
int8_t *buff_
const bool buff_is_provided_
std::vector<int64_t> target_init_vals_
std::unordered_map<int64_t, int64_t> count_distinct_sets_mapping_
std::shared_ptr<VarlenOutputInfo> varlen_output_info_

Friends

friend ResultSetStorage::ResultSet
friend ResultSetStorage::ResultSetManager