OmniSciDB
94e8789169
|
#include <PlanState.h>
Public Types | |
using | TableId = int |
using | ColumnId = int |
using | DeletedColumnsMap = std::unordered_map< TableId, const ColumnDescriptor * > |
Public Member Functions | |
PlanState (const bool allow_lazy_fetch, const std::vector< InputTableInfo > &query_infos, const DeletedColumnsMap &deleted_columns, const Executor *executor) | |
deleted_columns_ (deleted_columns) | |
query_infos_ (query_infos) | |
executor_ (executor) | |
void | allocateLocalColumnIds (const std::list< std::shared_ptr< const InputColDescriptor >> &global_col_ids) |
int | getLocalColumnId (const Analyzer::ColumnVar *col_var, const bool fetch_column) |
bool | isLazyFetchColumn (const Analyzer::Expr *target_expr) |
bool | isLazyFetchColumn (const InputColDescriptor &col_desc) |
const ColumnDescriptor * | getDeletedColForTable (const TableId table_id) |
Public Attributes | |
std::vector< int64_t > | init_agg_vals_ |
std::vector< Analyzer::Expr * > | target_exprs_ |
std::unordered_map < InputColDescriptor, size_t > | global_to_local_col_ids_ |
std::set< std::pair< TableId, ColumnId > > | columns_to_fetch_ |
std::set< std::pair< TableId, ColumnId > > | columns_to_not_fetch_ |
bool | allow_lazy_fetch_ |
JoinInfo | join_info_ |
const DeletedColumnsMap | deleted_columns_ |
const std::vector < InputTableInfo > & | query_infos_ |
const Executor * | executor_ |
Definition at line 41 of file PlanState.h.
using PlanState::ColumnId = int |
Definition at line 43 of file PlanState.h.
using PlanState::DeletedColumnsMap = std::unordered_map<TableId, const ColumnDescriptor*> |
Definition at line 44 of file PlanState.h.
using PlanState::TableId = int |
Definition at line 42 of file PlanState.h.
|
inline |
Definition at line 46 of file PlanState.h.
void PlanState::allocateLocalColumnIds | ( | const std::list< std::shared_ptr< const InputColDescriptor >> & | global_col_ids | ) |
Definition at line 50 of file PlanState.cpp.
References CHECK, and global_to_local_col_ids_.
Referenced by ScalarCodeGenerator::prepare().
PlanState::deleted_columns_ | ( | deleted_columns | ) |
|
inline |
Definition at line 54 of file PlanState.h.
|
inline |
Definition at line 82 of file PlanState.h.
References deleted_columns_.
Referenced by Executor::buildIsDeletedCb().
int PlanState::getLocalColumnId | ( | const Analyzer::ColumnVar * | col_var, |
const bool | fetch_column | ||
) |
Definition at line 62 of file PlanState.cpp.
References CHECK, columns_to_fetch_, Analyzer::ColumnVar::get_column_id(), Analyzer::ColumnVar::get_rte_idx(), Analyzer::ColumnVar::get_table_id(), and global_to_local_col_ids_.
Referenced by ScalarCodeGenerator::codegenColumn(), CodeGenerator::codegenColVar(), and CodeGenerator::colByteStream().
bool PlanState::isLazyFetchColumn | ( | const Analyzer::Expr * | target_expr | ) |
Definition at line 20 of file PlanState.cpp.
References allow_lazy_fetch_, columns_to_fetch_, columns_to_not_fetch_, executor_, and get_column_descriptor().
Referenced by CodeGenerator::codegenColVar(), and isLazyFetchColumn().
|
inline |
Definition at line 74 of file PlanState.h.
References InputColDescriptor::getColId(), InputDescriptor::getNestLevel(), InputColDescriptor::getScanDesc(), InputDescriptor::getTableId(), and isLazyFetchColumn().
PlanState::query_infos_ | ( | query_infos | ) |
bool PlanState::allow_lazy_fetch_ |
Definition at line 61 of file PlanState.h.
Referenced by isLazyFetchColumn().
Definition at line 59 of file PlanState.h.
Referenced by CodeGenerator::codegenColVar(), getLocalColumnId(), and isLazyFetchColumn().
Definition at line 60 of file PlanState.h.
Referenced by CodeGenerator::codegenColVar(), and isLazyFetchColumn().
const DeletedColumnsMap PlanState::deleted_columns_ |
Definition at line 63 of file PlanState.h.
Referenced by getDeletedColForTable().
const Executor* PlanState::executor_ |
Definition at line 65 of file PlanState.h.
Referenced by anonymous_namespace{ExternalExecutor.cpp}::create_table_schema(), and isLazyFetchColumn().
std::unordered_map<InputColDescriptor, size_t> PlanState::global_to_local_col_ids_ |
Definition at line 58 of file PlanState.h.
Referenced by allocateLocalColumnIds(), anonymous_namespace{ExternalExecutor.cpp}::create_table_schema(), and getLocalColumnId().
std::vector<int64_t> PlanState::init_agg_vals_ |
Definition at line 56 of file PlanState.h.
JoinInfo PlanState::join_info_ |
Definition at line 62 of file PlanState.h.
Referenced by Executor::buildCurrentLevelHashTable(), and CodeGenerator::hashJoinLhs().
const std::vector<InputTableInfo>& PlanState::query_infos_ |
Definition at line 64 of file PlanState.h.
Referenced by CodeGenerator::checkExpressionRanges().
std::vector<Analyzer::Expr*> PlanState::target_exprs_ |
Definition at line 57 of file PlanState.h.