OmniSciDB
a667adc9c8
|
Classes | |
class | OutVecOwner |
void anonymous_namespace{Execute.cpp}::add_deleted_col_to_map | ( | PlanState::DeletedColumnsMap & | deleted_cols_map, |
const ColumnDescriptor * | deleted_cd | ||
) |
Definition at line 3420 of file Execute.cpp.
References CHECK, CHECK_EQ, and ColumnDescriptor::tableId.
Referenced by Executor::addDeletedColumn().
ResultSetPtr anonymous_namespace{Execute.cpp}::build_row_for_empty_input | ( | const std::vector< Analyzer::Expr * > & | target_exprs_in, |
const QueryMemoryDescriptor & | query_mem_desc, | ||
const ExecutorDeviceType | device_type | ||
) |
Definition at line 1811 of file Execute.cpp.
References CHECK, fill_entries_for_empty_input(), QueryMemoryDescriptor::getExecutor(), query_mem_desc, and SQLTypeInfo::set_notnull().
Referenced by Executor::collectAllDeviceResults().
bool anonymous_namespace{Execute.cpp}::check_rows_less_than_needed | ( | const ResultSetPtr & | results, |
const size_t | scan_limit | ||
) |
Definition at line 3045 of file Execute.cpp.
References CHECK.
Referenced by Executor::executePlanWithGroupBy().
void anonymous_namespace{Execute.cpp}::checkWorkUnitWatchdog | ( | const RelAlgExecutionUnit & | ra_exe_unit, |
const std::vector< InputTableInfo > & | table_infos, | ||
const Catalog_Namespace::Catalog & | cat, | ||
const ExecutorDeviceType | device_type, | ||
const int | device_count | ||
) |
Definition at line 1106 of file Execute.cpp.
References SortInfo::algorithm, get_table_name(), getDeviceBasedScanLimit(), RelAlgExecutionUnit::groupby_exprs, Executor::high_scan_limit, RelAlgExecutionUnit::input_descs, join(), RelAlgExecutionUnit::scan_limit, RelAlgExecutionUnit::sort_info, StreamingTopN, RelAlgExecutionUnit::target_exprs, to_string(), and RelAlgExecutionUnit::use_bump_allocator.
Referenced by Executor::createKernels().
size_t anonymous_namespace{Execute.cpp}::compute_buffer_entry_guess | ( | const std::vector< InputTableInfo > & | query_infos | ) |
Definition at line 1056 of file Execute.cpp.
References CHECK.
Referenced by Executor::executeWorkUnitImpl().
std::vector<std::string> anonymous_namespace{Execute.cpp}::expr_container_to_string | ( | const T & | expr_container | ) |
Definition at line 1177 of file Execute.cpp.
Referenced by operator<<().
std::vector<std::string> anonymous_namespace{Execute.cpp}::expr_container_to_string | ( | const std::list< Analyzer::OrderEntry > & | expr_container | ) |
Definition at line 1190 of file Execute.cpp.
void anonymous_namespace{Execute.cpp}::fill_entries_for_empty_input | ( | std::vector< TargetInfo > & | target_infos, |
std::vector< int64_t > & | entry, | ||
const std::vector< Analyzer::Expr * > & | target_exprs, | ||
const QueryMemoryDescriptor & | query_mem_desc | ||
) |
Definition at line 1756 of file Execute.cpp.
References Bitmap, CHECK, g_bigint_count, g_cluster, get_target_info(), QueryMemoryDescriptor::getCountDistinctDescriptor(), QueryMemoryDescriptor::getExecutor(), i, inline_null_val(), kAPPROX_COUNT_DISTINCT, kAVG, kCOUNT, kSAMPLE, kSINGLE_VALUE, StdSet, and takes_float_argument().
Referenced by build_row_for_empty_input().
std::tuple<bool, int64_t, int64_t> anonymous_namespace{Execute.cpp}::get_hpt_overflow_underflow_safe_scaled_values | ( | const int64_t | chunk_min, |
const int64_t | chunk_max, | ||
const SQLTypeInfo & | lhs_type, | ||
const SQLTypeInfo & | rhs_type | ||
) |
Definition at line 3476 of file Execute.cpp.
References CHECK, SQLTypeInfo::get_dimension(), and DateTimeUtils::get_timestamp_precision_scale().
Referenced by Executor::skipFragment().
ResultSetPtr anonymous_namespace{Execute.cpp}::get_merged_result | ( | std::vector< std::pair< ResultSetPtr, std::vector< size_t >>> & | results_per_device | ) |
Definition at line 856 of file Execute.cpp.
References CHECK.
Referenced by Executor::resultsUnion().
ReductionCode anonymous_namespace{Execute.cpp}::get_reduction_code | ( | std::vector< std::pair< ResultSetPtr, std::vector< size_t >>> & | results_per_device, |
int64_t * | compilation_queue_time | ||
) |
Definition at line 930 of file Execute.cpp.
References ResultSetReductionJIT::codegen(), Executor::compilation_mutex_, timer_start(), and timer_stop().
Referenced by Executor::reduceMultiDeviceResultSets().
std::string anonymous_namespace{Execute.cpp}::get_table_name | ( | const InputDescriptor & | input_desc, |
const Catalog_Namespace::Catalog & | cat | ||
) |
Definition at line 1086 of file Execute.cpp.
References CHECK, Catalog_Namespace::Catalog::getMetadataForTable(), InputDescriptor::getSourceType(), InputDescriptor::getTableId(), TABLE, and to_string().
Referenced by checkWorkUnitWatchdog().
|
inline |
Definition at line 1098 of file Execute.cpp.
References GPU, and Executor::high_scan_limit.
Referenced by checkWorkUnitWatchdog().
bool anonymous_namespace{Execute.cpp}::has_lazy_fetched_columns | ( | const std::vector< ColumnLazyFetchInfo > & | fetched_cols | ) |
Definition at line 2033 of file Execute.cpp.
Referenced by Executor::createKernels().
int64_t anonymous_namespace{Execute.cpp}::inline_null_val | ( | const SQLTypeInfo & | ti, |
const bool | float_argument_input | ||
) |
Definition at line 1741 of file Execute.cpp.
References CHECK, SQLTypeInfo::get_type(), inline_fp_null_val(), inline_int_null_val(), SQLTypeInfo::is_boolean(), SQLTypeInfo::is_fp(), SQLTypeInfo::is_number(), SQLTypeInfo::is_string(), SQLTypeInfo::is_time(), and kFLOAT.
Referenced by fill_entries_for_empty_input().
Definition at line 1199 of file Execute.cpp.
References INNER, INVALID, LEFT, and UNREACHABLE.
Referenced by operator<<(), and ra_exec_unit_desc_for_caching().
size_t anonymous_namespace{Execute.cpp}::permute_storage_columnar | ( | const ResultSetStorage * | input_storage, |
const QueryMemoryDescriptor & | input_query_mem_desc, | ||
const ResultSetStorage * | output_storage, | ||
size_t | output_row_index, | ||
const QueryMemoryDescriptor & | output_query_mem_desc, | ||
const std::vector< uint32_t > & | top_permutation | ||
) |
This functions uses the permutation indices in "top_permutation", and permutes all group columns (if any) and aggregate columns into the output storage. In columnar layout, since different columns are not consecutive in the memory, different columns are copied back into the output storage separetely and through different memcpy operations.
output_row_index contains the current index of the output storage (input storage will be appended to it), and the final output row index is returned.
Definition at line 1897 of file Execute.cpp.
References QueryMemoryDescriptor::getColOffInBytes(), QueryMemoryDescriptor::getKeyCount(), QueryMemoryDescriptor::getPaddedSlotWidthBytes(), QueryMemoryDescriptor::getPrependedGroupColOffInBytes(), QueryMemoryDescriptor::getSlotCount(), ResultSetStorage::getUnderlyingBuffer(), and QueryMemoryDescriptor::groupColWidth().
Referenced by Executor::collectAllDeviceShardedTopResults().
size_t anonymous_namespace{Execute.cpp}::permute_storage_row_wise | ( | const ResultSetStorage * | input_storage, |
const ResultSetStorage * | output_storage, | ||
size_t | output_row_index, | ||
const QueryMemoryDescriptor & | output_query_mem_desc, | ||
const std::vector< uint32_t > & | top_permutation | ||
) |
This functions uses the permutation indices in "top_permutation", and permutes all group columns (if any) and aggregate columns into the output storage. In row-wise, since different columns are consecutive within the memory, it suffices to perform a single memcpy operation and copy the whole row.
output_row_index contains the current index of the output storage (input storage will be appended to it), and the final output row index is returned.
Definition at line 1947 of file Execute.cpp.
References QueryMemoryDescriptor::getRowSize(), and ResultSetStorage::getUnderlyingBuffer().
Referenced by Executor::collectAllDeviceShardedTopResults().
RelAlgExecutionUnit anonymous_namespace{Execute.cpp}::replace_scan_limit | ( | const RelAlgExecutionUnit & | ra_exe_unit_in, |
const size_t | new_scan_limit | ||
) |
Definition at line 1328 of file Execute.cpp.
References RelAlgExecutionUnit::estimator, RelAlgExecutionUnit::groupby_exprs, RelAlgExecutionUnit::input_col_descs, RelAlgExecutionUnit::input_descs, RelAlgExecutionUnit::join_quals, RelAlgExecutionUnit::quals, RelAlgExecutionUnit::query_hint, RelAlgExecutionUnit::query_state, RelAlgExecutionUnit::simple_quals, RelAlgExecutionUnit::sort_info, RelAlgExecutionUnit::target_exprs, RelAlgExecutionUnit::union_all, and RelAlgExecutionUnit::use_bump_allocator.
Referenced by Executor::executeWorkUnit().
std::string anonymous_namespace{Execute.cpp}::sort_algorithm_to_string | ( | const SortAlgorithm | algorithm | ) |
Definition at line 1212 of file Execute.cpp.
References Default, SpeculativeTopN, StreamingTopN, and UNREACHABLE.
Referenced by operator<<().
const ColumnDescriptor* anonymous_namespace{Execute.cpp}::try_get_column_descriptor | ( | const InputColDescriptor * | col_desc, |
const Catalog_Namespace::Catalog & | cat | ||
) |
Definition at line 2307 of file Execute.cpp.
References get_column_descriptor_maybe(), InputColDescriptor::getColId(), InputColDescriptor::getScanDesc(), and InputDescriptor::getTableId().
Referenced by Executor::fetchChunks(), and Executor::fetchUnionChunks().