CUBRID Engine
latest
|
#include "config.h"
#include <stdio.h>
#include <string.h>
#include <math.h>
#include <search.h>
#include <sys/timeb.h>
#include "query_executor.h"
#include "binaryheap.h"
#include "porting.h"
#include "error_manager.h"
#include "partition_sr.h"
#include "query_aggregate.hpp"
#include "query_analytic.hpp"
#include "query_opfunc.h"
#include "fetch.h"
#include "dbtype.h"
#include "object_primitive.h"
#include "object_representation.h"
#include "list_file.h"
#include "extendible_hash.h"
#include "xasl_cache.h"
#include "stream_to_xasl.h"
#include "query_manager.h"
#include "query_reevaluation.hpp"
#include "replication.h"
#include "elo.h"
#include "db_elo.h"
#include "locator_sr.h"
#include "log_lsa.hpp"
#include "log_volids.hpp"
#include "xserver_interface.h"
#include "tz_support.h"
#include "session.h"
#include "db_date.h"
#include "btree_load.h"
#include "query_dump.h"
#include "db_json.hpp"
#include "string_regex.hpp"
#include "thread_entry.hpp"
#include "regu_var.hpp"
#include "xasl.h"
#include "xasl_aggregate.hpp"
#include "xasl_analytic.hpp"
#include "xasl_predicate.hpp"
#include <vector>
Go to the source code of this file.
Classes | |
struct | xasl_state |
struct | groupby_dimension |
struct | groupby_state |
struct | analytic_function_state |
struct | analytic_state |
struct | ordbynum_info |
struct | parent_pos_info |
struct | del_lob_info |
struct | upddel_class_info_internal |
Typedefs | |
typedef struct xasl_state | XASL_STATE |
typedef SCAN_CODE(* | XSAL_SCAN_FUNC) (THREAD_ENTRY *thread_p, XASL_NODE *, XASL_STATE *, QFILE_TUPLE_RECORD *, void *) |
typedef XSAL_SCAN_FUNC * | XASL_SCAN_FNC_PTR |
typedef enum groupby_dimension_flag | GROUPBY_DIMENSION_FLAG |
typedef struct groupby_dimension | GROUPBY_DIMENSION |
typedef struct groupby_state | GROUPBY_STATE |
typedef struct analytic_function_state | ANALYTIC_FUNCTION_STATE |
typedef struct analytic_state | ANALYTIC_STATE |
typedef struct ordbynum_info | ORDBYNUM_INFO |
typedef struct parent_pos_info | PARENT_POS_INFO |
typedef struct del_lob_info | DEL_LOB_INFO |
typedef struct upddel_class_info_internal | UPDDEL_CLASS_INFO_INTERNAL |
typedef enum analytic_stage | ANALYTIC_STAGE |
Enumerations | |
enum | groupby_dimension_flag { GROUPBY_DIM_FLAG_NONE = 0, GROUPBY_DIM_FLAG_GROUP_BY = 1, GROUPBY_DIM_FLAG_ROLLUP = 2, GROUPBY_DIM_FLAG_CUBE = 4, GROUPBY_DIM_FLAG_SET = 8 } |
enum | analytic_stage { ANALYTIC_INTERM_PROC = 1, ANALYTIC_GROUP_PROC } |
enum | TOPN_STATUS { TOPN_SUCCESS, TOPN_OVERFLOW, TOPN_FAILURE } |
#define CONNECTBY_TUPLE_INDEX_STRING_MEM 64 |
Definition at line 117 of file query_executor.c.
Referenced by bf2df_str_son_index(), qexec_get_index_pseudocolumn_value_from_tuple(), and qexec_init_index_pseudocolumn_strings().
#define CTE_CURR_ITERATION_LAST_TUPLE | ( | node | ) |
Referenced by qexec_intprt_fnc().
#define CTE_CURRENT_SCAN_READ_TUPLE | ( | node | ) |
Referenced by qexec_intprt_fnc().
#define GOTO_EXIT_ON_ERROR |
Definition at line 94 of file query_executor.c.
Referenced by prepare_mvcc_reev_data(), qexec_add_composite_lock(), qexec_analytic_add_tuple(), qexec_analytic_start_group(), qexec_end_buildvalueblock_iterations(), qexec_end_mainblock_iterations(), qexec_end_one_iteration(), qexec_execute_analytic(), qexec_execute_build_columns(), qexec_execute_build_indexes(), qexec_execute_connect_by(), qexec_execute_cte(), qexec_execute_delete(), qexec_execute_insert(), qexec_execute_mainblock_internal(), qexec_execute_merge(), qexec_execute_obj_fetch(), qexec_execute_update(), qexec_gby_agg_tuple(), qexec_gby_finalize_group(), qexec_gby_start_group(), qexec_groupby(), qexec_groupby_index(), qexec_listfile_orderby(), qexec_merge_fnc(), qexec_merge_list_outer(), qexec_merge_listfiles(), qexec_orderby_distinct_by_sorting(), qexec_start_mainblock_iterations(), and qexec_upddel_add_unique_oid_to_ehid().
#define HASH_AGGREGATE_DEFAULT_TABLE_SIZE 1000 |
Definition at line 120 of file query_executor.c.
Referenced by qexec_alloc_agg_hash_context().
#define HASH_AGGREGATE_VH_SELECTIVITY_THRESHOLD 0.5f |
Definition at line 127 of file query_executor.c.
Referenced by qexec_hash_gby_agg_tuple().
#define HASH_AGGREGATE_VH_SELECTIVITY_TUPLE_THRESHOLD 200 |
Definition at line 124 of file query_executor.c.
Referenced by qexec_hash_gby_agg_tuple().
#define MIN_NUM_ROWS_FOR_MULTI_DELETE 20 |
Referenced by qexec_execute_delete().
#define QEXEC_CLEAR_AGG_LIST_VALUE | ( | agg_list | ) |
Definition at line 130 of file query_executor.c.
Referenced by qexec_clear_groupby_state(), qexec_end_buildvalueblock_iterations(), qexec_gby_finalize_group(), and qexec_gby_start_group().
#define QEXEC_EMPTY_ACCESS_SPEC_SCAN | ( | specp | ) |
Definition at line 143 of file query_executor.c.
Referenced by qexec_next_merge_block(), and qexec_next_scan_block().
#define QEXEC_GET_BH_TOPN_TUPLE | ( | heap, | |
index | |||
) | (*(TOPN_TUPLE **) BH_ELEMENT (heap, index)) |
Definition at line 374 of file query_executor.c.
Referenced by qexec_clear_xasl(), and qexec_topn_tuples_to_list_id().
#define QEXEC_IS_MULTI_TABLE_UPDATE_DELETE | ( | xasl | ) | (xasl->upd_del_class_cnt > 1 || (xasl->upd_del_class_cnt == 1 && xasl->scan_ptr != NULL)) |
Definition at line 147 of file query_executor.c.
Referenced by qexec_end_mainblock_iterations(), qexec_end_one_iteration(), qexec_execute_mainblock_internal(), and qexec_start_mainblock_iterations().
#define QEXEC_MERGE_ADD_MERGETUPLE | ( | thread_p, | |
t1, | |||
t2 | |||
) |
Definition at line 5137 of file query_executor.c.
Referenced by qexec_merge_list(), and qexec_merge_list_outer().
#define QEXEC_MERGE_NEXT_SCAN | ( | thread_p, | |
pre, | |||
e | |||
) |
Definition at line 5158 of file query_executor.c.
Referenced by qexec_merge_list().
#define QEXEC_MERGE_NEXT_SCAN_PVALS | ( | thread_p, | |
pre, | |||
e | |||
) |
Definition at line 5174 of file query_executor.c.
Referenced by qexec_merge_list().
#define QEXEC_MERGE_OUTER_NEXT_SCAN | ( | thread_p, | |
pre, | |||
e | |||
) |
Definition at line 5191 of file query_executor.c.
Referenced by qexec_merge_list_outer().
#define QEXEC_MERGE_OUTER_NEXT_SCAN_PVALS | ( | thread_p, | |
pre, | |||
e | |||
) |
Definition at line 5209 of file query_executor.c.
Referenced by qexec_merge_list_outer().
#define QEXEC_MERGE_OUTER_PREV_SCAN | ( | thread_p, | |
pre | |||
) |
Definition at line 5201 of file query_executor.c.
Referenced by qexec_merge_list_outer().
#define QEXEC_MERGE_OUTER_PREV_SCAN_PVALS | ( | thread_p, | |
pre | |||
) |
Definition at line 5217 of file query_executor.c.
Referenced by qexec_merge_list_outer().
#define QEXEC_MERGE_PREV_SCAN | ( | thread_p, | |
pre | |||
) |
Definition at line 5167 of file query_executor.c.
Referenced by qexec_merge_list().
#define QEXEC_MERGE_PVALS | ( | pre | ) |
Definition at line 5145 of file query_executor.c.
Referenced by qexec_merge_list(), and qexec_merge_list_outer().
#define QEXEC_MERGE_REV_SCAN_PVALS | ( | thread_p, | |
pre | |||
) |
Definition at line 5182 of file query_executor.c.
Referenced by qexec_merge_list().
#define QEXEC_SEL_UPD_USE_REEVALUATION | ( | xasl | ) |
Definition at line 150 of file query_executor.c.
Referenced by qexec_execute_mainblock_internal(), and qexec_execute_selupd_list().
#define QPROC_MAX_GROUPED_SCAN_CNT (4) |
Definition at line 111 of file query_executor.c.
Referenced by qexec_execute_mainblock_internal().
#define QPROC_SINGLE_CLASS_GROUPED_SCAN (0) |
Definition at line 114 of file query_executor.c.
Referenced by qexec_execute_mainblock_internal().
typedef struct analytic_function_state ANALYTIC_FUNCTION_STATE |
Definition at line 236 of file query_executor.c.
typedef enum analytic_stage ANALYTIC_STAGE |
Definition at line 372 of file query_executor.c.
typedef struct analytic_state ANALYTIC_STATE |
Definition at line 265 of file query_executor.c.
typedef struct del_lob_info DEL_LOB_INFO |
Definition at line 328 of file query_executor.c.
typedef struct groupby_dimension GROUPBY_DIMENSION |
Definition at line 184 of file query_executor.c.
typedef enum groupby_dimension_flag GROUPBY_DIMENSION_FLAG |
Definition at line 182 of file query_executor.c.
typedef struct groupby_state GROUPBY_STATE |
Definition at line 191 of file query_executor.c.
typedef struct ordbynum_info ORDBYNUM_INFO |
Definition at line 307 of file query_executor.c.
typedef struct parent_pos_info PARENT_POS_INFO |
Definition at line 320 of file query_executor.c.
typedef struct upddel_class_info_internal UPDDEL_CLASS_INFO_INTERNAL |
Definition at line 340 of file query_executor.c.
typedef XSAL_SCAN_FUNC* XASL_SCAN_FNC_PTR |
Definition at line 172 of file query_executor.c.
typedef struct xasl_state XASL_STATE |
Definition at line 86 of file query_executor.c.
typedef SCAN_CODE(* XSAL_SCAN_FUNC) (THREAD_ENTRY *thread_p, XASL_NODE *, XASL_STATE *, QFILE_TUPLE_RECORD *, void *) |
Definition at line 169 of file query_executor.c.
enum analytic_stage |
Enumerator | |
---|---|
ANALYTIC_INTERM_PROC | |
ANALYTIC_GROUP_PROC |
Definition at line 367 of file query_executor.c.
Enumerator | |
---|---|
GROUPBY_DIM_FLAG_NONE | |
GROUPBY_DIM_FLAG_GROUP_BY | |
GROUPBY_DIM_FLAG_ROLLUP | |
GROUPBY_DIM_FLAG_CUBE | |
GROUPBY_DIM_FLAG_SET |
Definition at line 174 of file query_executor.c.
enum TOPN_STATUS |
Enumerator | |
---|---|
TOPN_SUCCESS | |
TOPN_OVERFLOW | |
TOPN_FAILURE |
Definition at line 376 of file query_executor.c.
|
static |
Definition at line 18044 of file query_executor.c.
References ARG_FILE_LINE, assert, ASSERT_ERROR, bf2df_str_compare(), cleanup(), db_private_alloc, db_private_free_and_init, DB_UNK, ER_ERROR_SEVERITY, ER_OUT_OF_VIRTUAL_MEMORY, er_set(), NO_ERROR, NULL, OR_BYTE_SIZE, OR_GET_BYTE, or_get_varchar_compression_lengths(), or_init(), OR_MINIMUM_STRING_LENGTH_FOR_COMPRESSION, pr_get_compressed_data_from_buffer(), and rc.
Referenced by qexec_execute_connect_by().
|
static |
Definition at line 18187 of file query_executor.c.
References bf2df_str_compare(), db_get_string(), db_get_string_size(), DB_UNK, NULL, and REINTERPRET_CAST.
Referenced by qexec_execute_connect_by().
|
static |
Definition at line 17966 of file query_executor.c.
References DB_EQ, DB_GT, DB_LT, and DB_UNK.
Referenced by bf2df_str_cmpdisk(), and bf2df_str_cmpval().
|
static |
Definition at line 16498 of file query_executor.c.
References CONNECTBY_TUPLE_INDEX_STRING_MEM, db_private_alloc, db_private_free_and_init, ER_OUT_OF_VIRTUAL_MEMORY, NO_ERROR, NULL, and strlen.
Referenced by qexec_execute_connect_by().
|
static |
Definition at line 8610 of file query_executor.c.
References assert, cubquery::upddel_mvcc_cond_reeval::class_index, cubquery::mvcc_update_reev_data::cons_pred, cubquery::mvcc_update_reev_data::copyarea, cubquery::mvcc_update_reev_data::curr_assigns, cubquery::mvcc_update_reev_data::curr_attrinfo, cubquery::mvcc_update_reev_data::curr_extra_assign_cnt, cubquery::mvcc_update_reev_data::curr_extra_assign_reev, db_private_alloc, db_private_free, db_private_free_and_init, ER_FAILED, upddel_class_info_internal::extra_assign_reev_cnt, GOTO_EXIT_ON_ERROR, cubquery::mvcc_update_reev_data::mvcc_cond_reev_list, upddel_class_info::mvcc_extra_assign_reev, upddel_class_info_internal::mvcc_extra_assign_reev, NO_ERROR, NULL, upddel_class_info::num_extra_assign_reev, OID_SET_NULL, qexec_create_mvcc_reev_assignments(), xasl_state::vd, and cubquery::mvcc_update_reev_data::vd.
Referenced by qexec_execute_delete(), and qexec_execute_update().
|
static |
Definition at line 800 of file query_executor.c.
References COPY_OID, db_get_oid(), db_get_set(), DB_IS_NULL, db_seq_get(), DB_TYPE_OID, DB_TYPE_VOBJ, DB_VALUE_DOMAIN_TYPE, er_errid(), ER_FAILED, fetch_peek_dbval(), GOTO_EXIT_ON_ERROR, lock_add_composite_lock(), regu_variable_list_node::next, NO_ERROR, NULL, SAFE_COPY_OID, regu_variable_list_node::value, and xasl_state::vd.
Referenced by qexec_end_one_iteration(), and qexec_gby_finalize_group().
|
static |
Definition at line 24129 of file query_executor.c.
References assert, assert_release, bh_down_heap(), BH_EQ, bh_insert(), bh_is_full(), BH_LT, bh_peek_max(), error(), qfile_tuple_descriptor::f_cnt, qfile_tuple_descriptor::f_valp, sort_list::next, NO_ERROR, NULL, sort_list::pos_descr, qfile_tuple_value_position::pos_no, qdata_tuple_to_values_array(), qexec_clear_topn_tuple(), qexec_topn_cmpval(), TOPN_FAILURE, TOPN_OVERFLOW, TOPN_SUCCESS, and qfile_tuple_descriptor::tpl_size.
Referenced by qexec_end_one_iteration().
|
static |
Definition at line 24730 of file query_executor.c.
References ARG_FILE_LINE, assert, db_private_alloc, db_private_free, qfile_tuple_value_type_list::domp, er_errid(), ER_ERROR_SEVERITY, ER_FAILED, ER_OUT_OF_VIRTUAL_MEMORY, er_set(), buildlist_proc_node::g_agg_list, buildlist_proc_node::g_func_count, buildlist_proc_node::g_hash_eligible, buildlist_proc_node::g_hk_scan_regu_list, buildlist_proc_node::g_hkey_size, HASH_AGGREGATE_DEFAULT_TABLE_SIZE, HS_ACCEPT_ALL, i, mht_create(), tp_domain::next, cubxasl::aggregate_list_node::next, regu_variable_list_node::next, NO_ERROR, NULL, qdata_agg_hkey_eq(), qdata_alloc_agg_hkey(), qdata_alloc_agg_hvalue(), qdata_hash_agg_hkey(), qexec_free_agg_hash_context(), qfile_open_list(), xasl_state::query_id, S_CLOSED, tp_Integer_domain, tp_Variable_domain, and qfile_tuple_value_type_list::type_cnt.
Referenced by qexec_execute_mainblock_internal().
|
static |
Definition at line 20222 of file query_executor.c.
References analytic_state::a_outptr_list_interm, analytic_state::a_regu_list, assert, analytic_function_state::curr_group_tuple_count, analytic_function_state::curr_sort_key_tuple_count, er_errid(), fetch_val_list(), analytic_state::func_count, analytic_function_state::func_p, analytic_state::func_state_list, GOTO_EXIT_ON_ERROR, i, analytic_state::interm_file, analytic_state::is_output_rec, NO_ERROR, NULL, analytic_state::output_tplrec, qdata_evaluate_analytic_func(), qexec_insert_tuple_into_list(), analytic_state::state, xasl_state::vd, and analytic_state::xasl_state.
Referenced by qexec_analytic_put_next().
|
static |
Definition at line 19998 of file query_executor.c.
References ANALYTIC_GROUP_PROC, ANALYTIC_INTERM_PROC, ER_FAILED, analytic_state::func_count, analytic_function_state::func_p, analytic_state::func_state_list, cubxasl::analytic_list_node::function, i, xasl_node::instnum_flag, xasl_node::instnum_pred, analytic_state::is_last_run, analytic_state::is_output_rec, NO_ERROR, NULL, PT_FIRST_VALUE, PT_LAST_VALUE, PT_NTILE, qexec_eval_instnum_pred(), QPROC_ANALYTIC_IS_OFFSET_FUNCTION, V_ERROR, V_TRUE, analytic_state::xasl, XASL_INSTNUM_FLAG_EVAL_DEFER, XASL_INSTNUM_FLAG_SCAN_STOP_AT_ANALYTIC, and analytic_state::xasl_state.
Referenced by qexec_analytic_put_next(), and qexec_analytic_update_group_result().
|
static |
Definition at line 20656 of file query_executor.c.
References analytic_function_state::curr_group_tuple_count, analytic_function_state::curr_sort_key_tuple_count, db_make_double(), ER_FAILED, analytic_function_state::func_p, cubxasl::analytic_list_node::function, analytic_function_state::group_tuple_position, NO_ERROR, PT_CUME_DIST, PT_PERCENT_RANK, analytic_function_state::sort_key_tuple_position, and cubxasl::analytic_list_node::value.
Referenced by qexec_analytic_update_group_result().
|
static |
Definition at line 20697 of file query_executor.c.
References assert, analytic_function_state::curr_group_tuple_count_nn, db_get_double(), db_make_null(), DB_TYPE_DOUBLE, DB_VALUE_TYPE, cubxasl::analytic_list_node::domain, er_errid(), ER_FAILED, error(), fetch_peek_dbval(), analytic_function_state::func_p, cubxasl::analytic_list_node::function, analytic_function_state::group_tuple_position_nn, cubxasl::analytic_list_node::info, cubxasl::analytic_list_node::is_const_operand, NO_ERROR, NULL, cubxasl::analytic_function_info::percentile, cubxasl::analytic_percentile_function_info::percentile_reguvar, pr_clear_value(), pr_clone_value(), PT_MEDIAN, PT_PERCENTILE_DISC, qdata_apply_interpolation_function_coercion(), qdata_interpolation_function_values(), qexec_analytic_value_lookup(), QPROC_IS_INTERPOLATION_FUNC, and cubxasl::analytic_list_node::value.
Referenced by qexec_analytic_update_group_result().
|
static |
Definition at line 20376 of file query_executor.c.
References cubxasl::analytic_ntile_function_info::bucket_count, analytic_function_state::curr_group_tuple_count, db_make_int(), db_make_null(), analytic_function_state::func_p, cubxasl::analytic_list_node::function, analytic_function_state::group_tuple_position, cubxasl::analytic_list_node::info, cubxasl::analytic_ntile_function_info::is_null, NO_ERROR, cubxasl::analytic_function_info::ntile, NULL, PT_NTILE, and cubxasl::analytic_list_node::value.
Referenced by qexec_analytic_update_group_result().
|
static |
Definition at line 20437 of file query_executor.c.
References analytic_state::a_regu_list, ARG_FILE_LINE, assert, analytic_function_state::curr_group_tuple_count, analytic_function_state::curr_group_tuple_count_nn, db_value::data, db_get_double(), DB_INT32_MAX, DB_IS_NULL, cubxasl::analytic_list_node::default_idx, cubxasl::analytic_list_node::domain, DOMAIN_COMPATIBLE, ER_ARG_OUT_OF_RANGE, ER_ERROR_SEVERITY, ER_FAILED, ER_QPROC_INVALID_XASLNODE, ER_QUERY_EXECUTION_ERROR, er_set(), error(), cubxasl::analytic_list_node::from_last, analytic_function_state::func_p, cubxasl::analytic_list_node::function, analytic_function_state::group_consumed_tuples, analytic_function_state::group_tuple_position, db_data::i, cubxasl::analytic_list_node::ignore_nulls, regu_variable_list_node::next, NO_ERROR, NULL, cubxasl::analytic_list_node::offset_idx, pr_clear_value(), pr_clone_value(), PT_LAG, PT_LEAD, PT_NTH_VALUE, qexec_analytic_value_lookup(), QPROC_ANALYTIC_IS_OFFSET_FUNCTION, cubxasl::analytic_list_node::sort_list_size, cubxasl::analytic_list_node::sort_prefix_size, tp_domain_status_er_set(), tp_Double_domain, tp_Integer_domain, tp_value_coerce(), cubxasl::analytic_list_node::value, and regu_variable_list_node::value.
Referenced by qexec_analytic_update_group_result().
|
static |
Definition at line 20145 of file query_executor.c.
References analytic_function_state::cgtc_dbval, analytic_function_state::cgtc_nn_dbval, cleanup(), analytic_function_state::csktc_dbval, analytic_function_state::curr_group_tuple_count, analytic_function_state::curr_group_tuple_count_nn, analytic_function_state::curr_sort_key_tuple_count, DB_IS_NULL, db_make_int(), db_private_free, ER_FAILED, analytic_function_state::func_p, analytic_function_state::group_list_id, NO_ERROR, NULL, qdata_finalize_analytic_func(), qfile_add_tuple_to_list(), qfile_copy_tuple_descr_to_tuple(), qfile_fast_intint_tuple_to_list(), qfile_fast_intval_tuple_to_list(), rc, qfile_tuple_record::size, qfile_tuple_record::tpl, qfile_list_id::tpl_descr, cubxasl::analytic_list_node::value, and analytic_function_state::value_list_id.
Referenced by qexec_analytic_put_next(), and qexec_execute_analytic().
|
static |
Definition at line 19772 of file query_executor.c.
References analytic_state::input_scan, analytic_state::input_tplrec, analytic_state::key_info, and qfile_make_sort_key().
Referenced by qexec_execute_analytic().
|
static |
Definition at line 20828 of file query_executor.c.
References assert, analytic_function_state::curr_group_tuple_count, analytic_function_state::curr_group_tuple_count_nn, DB_ALIGN, pr_type::disksize, ER_FAILED, analytic_function_state::group_tplrec, MAX_ALIGNMENT, NO_ERROR, NULL, OR_GET_INT, QFILE_GET_TUPLE_VALUE_FLAG, QFILE_TUPLE_LENGTH_SIZE, QFILE_TUPLE_VALUE_HEADER_SIZE, tp_Integer, qfile_tuple_record::tpl, and V_BOUND.
Referenced by qexec_analytic_value_advance().
|
static |
Definition at line 21134 of file query_executor.c.
References assert, cubregex::count(), analytic_function_state::curr_group_tuple_count, analytic_function_state::group_tuple_position, NULL, and qexec_analytic_value_advance().
Referenced by qexec_analytic_update_group_result().
|
static |
Definition at line 19789 of file query_executor.c.
References ANALYTIC_FUNC_SET_FLAG, ANALYTIC_INTERM_PROC, ANALYTIC_KEEP_RANK, analytic_state::analytic_rec, recdes::area_size, assert, analytic_state::cmp_fn, COPY, analytic_state::curr_sort_page, analytic_function_state::current_key, recdes::data, er_errid(), analytic_state::func_count, analytic_function_state::func_p, analytic_state::func_state_list, cubxasl::analytic_list_node::function, i, analytic_state::input_recs, analytic_state::input_scan, analytic_state::key_info, qfile_list_scan_id::list_id, SORT_REC::next, SORTKEY_INFO::nkeys, NO_ERROR, NULL, NULL_PAGEID, cubxasl::analytic_list_node::option, SORT_REC::original, analytic_state::page_p, vpid::pageid, PEEK, pr_clear_value(), PT_NTILE, Q_ALL, qexec_analytic_add_tuple(), qexec_analytic_eval_instnum_pred(), qexec_analytic_finalize_group(), qexec_analytic_start_group(), QFILE_GET_OVERFLOW_VPID, qfile_get_tuple(), qmgr_free_old_page_and_init, qmgr_get_old_page(), QPROC_ANALYTIC_IS_OFFSET_FUNCTION, QPROC_IS_INTERPOLATION_FUNC, SORT_REC::s, qfile_tuple_record::size, cubxasl::analytic_list_node::sort_list_size, cubxasl::analytic_list_node::sort_prefix_size, analytic_state::state, qfile_list_id::tfile_vfid, qfile_tuple_record::tpl, cubxasl::analytic_list_node::value, vpid::volid, analytic_state::vpid, and analytic_state::xasl_state.
Referenced by qexec_execute_analytic().
|
static |
Definition at line 20868 of file query_executor.c.
References assert, analytic_function_state::curr_sort_key_tuple_count, pr_type::data_readval(), DB_ALIGN, db_make_null(), pr_type::disksize, cubxasl::analytic_list_node::domain, ER_FAILED, analytic_function_state::func_p, cubxasl::analytic_list_node::ignore_nulls, MAX_ALIGNMENT, NO_ERROR, NULL, OR_BUF_INIT, OR_GET_INT, pr_clear_value(), QFILE_GET_TUPLE_VALUE_FLAG, QFILE_GET_TUPLE_VALUE_LENGTH, QFILE_TUPLE_LENGTH_SIZE, QFILE_TUPLE_VALUE_HEADER_SIZE, QPROC_IS_INTERPOLATION_FUNC, rc, tp_Integer, qfile_tuple_record::tpl, tp_domain::type, V_BOUND, cubxasl::analytic_list_node::value, and analytic_function_state::value_tplrec.
Referenced by qexec_analytic_value_advance(), and qexec_analytic_value_lookup().
|
static |
Definition at line 20072 of file query_executor.c.
References recdes::area_size, assert, analytic_function_state::curr_group_tuple_count, analytic_function_state::curr_group_tuple_count_nn, analytic_function_state::curr_sort_key_tuple_count, analytic_function_state::current_key, recdes::data, db_private_realloc, er_errid(), error(), analytic_function_state::func_p, GOTO_EXIT_ON_ERROR, recdes::length, NO_ERROR, NULL, cubxasl::analytic_list_node::part_value, pr_clear_value(), qdata_copy_db_value(), qdata_initialize_analytic_func(), xasl_state::query_id, and cubxasl::analytic_list_node::value.
Referenced by qexec_analytic_put_next().
|
static |
Definition at line 21156 of file query_executor.c.
References analytic_state::a_outptr_list, analytic_state::a_regu_list, ANALYTIC_GROUP_PROC, assert, cleanup(), analytic_function_state::curr_group_tuple_count, analytic_function_state::curr_group_tuple_count_nn, analytic_function_state::curr_sort_key_tuple_count, db_private_free_and_init, ER_FAILED, fetch_val_list(), analytic_state::func_count, analytic_function_state::func_p, analytic_state::func_state_list, cubxasl::analytic_list_node::function, analytic_function_state::group_consumed_tuples, analytic_function_state::group_list_id, analytic_function_state::group_scan_id, analytic_function_state::group_tuple_position, analytic_function_state::group_tuple_position_nn, i, cubxasl::analytic_list_node::ignore_nulls, analytic_state::interm_file, analytic_state::is_output_rec, regu_variable_list_node::next, NO_ERROR, NULL, cubxasl::analytic_list_node::out_value, analytic_state::output_file, PEEK, PT_CUME_DIST, PT_FIRST_VALUE, PT_LAG, PT_LAST_VALUE, PT_LEAD, PT_MEDIAN, PT_NTH_VALUE, PT_NTILE, PT_PERCENT_RANK, PT_PERCENTILE_CONT, PT_PERCENTILE_DISC, PT_ROW_NUMBER, qexec_analytic_eval_instnum_pred(), qexec_analytic_evaluate_cume_dist_percent_rank_function(), qexec_analytic_evaluate_interpolation_function(), qexec_analytic_evaluate_ntile_function(), qexec_analytic_evaluate_offset_function(), qexec_analytic_group_header_next(), qexec_analytic_value_advance(), qexec_insert_tuple_into_list(), qfile_close_scan(), qfile_open_list_scan(), qfile_scan_list_next(), QPROC_ANALYTIC_IS_OFFSET_FUNCTION, QPROC_IS_INTERPOLATION_FUNC, rc, S_END, S_ERROR, S_SUCCESS, qfile_tuple_record::size, analytic_function_state::sort_key_tuple_position, qfile_tuple_record::tpl, cubxasl::analytic_list_node::value, regu_variable_list_node::value, analytic_function_state::value_list_id, analytic_function_state::value_scan_id, xasl_state::vd, and analytic_state::xasl_state.
Referenced by qexec_execute_analytic().
|
static |
Definition at line 20931 of file query_executor.c.
References analytic_function_state::curr_group_tuple_count, analytic_function_state::curr_group_tuple_count_nn, analytic_function_state::curr_sort_key_tuple_count, DB_IS_NULL, ER_FAILED, analytic_function_state::func_p, analytic_function_state::group_scan_id, analytic_function_state::group_tplrec, analytic_function_state::group_tuple_position, analytic_function_state::group_tuple_position_nn, NO_ERROR, PEEK, qexec_analytic_group_header_load(), qexec_analytic_sort_key_header_load(), qfile_scan_list_next(), qfile_scan_list_prev(), S_SUCCESS, analytic_function_state::sort_key_tuple_position, cubxasl::analytic_list_node::value, analytic_function_state::value_scan_id, and analytic_function_state::value_tplrec.
Referenced by qexec_analytic_group_header_next(), qexec_analytic_update_group_result(), and qexec_analytic_value_lookup().
|
static |
Definition at line 21102 of file query_executor.c.
References analytic_function_state::group_tuple_position, analytic_function_state::group_tuple_position_nn, qexec_analytic_sort_key_header_load(), and qexec_analytic_value_advance().
Referenced by qexec_analytic_evaluate_interpolation_function(), and qexec_analytic_evaluate_offset_function().
|
static |
Definition at line 25109 of file query_executor.c.
References fetch_peek_dbval(), cubquery::aggregate_hash_key::free_values, regu_variable_list_node::next, NO_ERROR, NULL, rc, cubquery::aggregate_hash_key::val_count, regu_variable_list_node::value, cubquery::aggregate_hash_key::values, and xasl_state::vd.
Referenced by qexec_gby_put_next(), and qexec_hash_gby_agg_tuple().
|
static |
Definition at line 10140 of file query_executor.c.
References assert, del_lob_info::class_oid, upddel_class_info_internal::class_oid, del_lob_info::next, NULL, and qexec_create_delete_lob_info().
Referenced by qexec_execute_delete(), and qexec_execute_update().
|
static |
Definition at line 16290 of file query_executor.c.
References db_get_bit(), ER_FAILED, NO_ERROR, NULL, qfile_tuple_position::offset, PCOL_PARENTPOS_TUPLE_OFFSET, PEEK, qfile_tuple_position::position, qexec_compare_valptr_with_tuple(), qexec_get_tuple_column_value(), qfile_close_scan(), qfile_jump_scan_tuple_position(), qfile_open_list_scan(), REINTERPRET_CAST, S_ON, S_SUCCESS, qfile_tuple_position::status, qfile_list_scan_id::status, tp_Bit_domain, qfile_tuple_record::tpl, qfile_tuple_position::tpl, qfile_tuple_position::tplno, valptr_list_node::valptr_cnt, and qfile_tuple_position::vpid.
Referenced by qexec_execute_connect_by().
|
static |
Definition at line 13569 of file query_executor.c.
References ARG_FILE_LINE, DB_EQ, DB_GT, db_make_int(), ER_ERROR_SEVERITY, ER_FAILED, ER_QPROC_INVALID_PARAMETER, er_set(), fetch_peek_dbval(), xasl_node::limit_offset, xasl_node::limit_row_count, NO_ERROR, NULL, tp_value_compare(), and xasl_state::vd.
Referenced by qexec_execute_mainblock_internal().
|
static |
Definition at line 1783 of file query_executor.c.
References access_spec_node::access, ACCESS_METHOD_INDEX, ACCESS_SPEC_SET_PTR, ACCESS_SPEC_SET_REGU_LIST, showstmt_spec_node::arg_list, scan_attrs::attr_cache, indx_info::btid, access_spec_node::btid, BTID_COPY, BTREE_KEY_INFO_COUNT, BTREE_NODE_INFO_COUNT, heap_page_scan_id::cache_page_info, heap_scan_id::cache_recordinfo, heap_scan_id::caches_inited, indx_scan_id::caches_inited, index_node_scan_id::caches_inited, hybrid_node::cls_node, cls_spec_node::cls_regu_list_key, cls_spec_node::cls_regu_list_pred, cls_spec_node::cls_regu_list_rest, db_private_free, heap_attrinfo_end(), HEAP_PAGE_INFO_COUNT, HEAP_RECORD_INFO_COUNT, i, access_spec_node::indexptr, hybrid_node::json_table_node, key_range::key1, key_range::key2, indx_scan_id::key_attrs, key_info::key_cnt, indx_info::key_info, indx_scan_id::key_info_regu_list, indx_scan_id::key_info_values, key_info::key_limit_l, key_info::key_limit_u, indx_scan_id::key_pred, key_info::key_ranges, hybrid_node::list_node, list_spec_node::list_regu_list_build, list_spec_node::list_regu_list_pred, list_spec_node::list_regu_list_probe, list_spec_node::list_regu_list_rest, cubxasl::json_table::spec_node::m_json_reguvar, hybrid_node::method_node, method_spec_node::method_regu_list, access_spec_node::next, index_node_scan_id::node_info_regu_list, index_node_scan_id::node_info_values, NULL, p, pr_clear_value(), heap_scan_id::pred_attrs, indx_scan_id::pred_attrs, qexec_clear_db_val_list(), qexec_clear_pred(), qexec_clear_regu_list(), qexec_clear_regu_var(), qexec_clear_xasl(), indx_scan_id::range_attrs, indx_scan_id::range_pred, scan_pred::regu_list, heap_scan_id::rest_attrs, indx_scan_id::rest_attrs, access_spec_node::s, S_CLASS_ATTR_SCAN, access_spec_node::s_dbval, S_HEAP_PAGE_SCAN, S_HEAP_SCAN, S_HEAP_SCAN_RECORD_INFO, S_INDX_KEY_INFO_SCAN, S_INDX_NODE_INFO_SCAN, S_INDX_SCAN, S_JSON_TABLE_SCAN, S_LIST_SCAN, S_METHOD_SCAN, S_SET_SCAN, S_SHOWSTMT_SCAN, S_VALUES_SCAN, hybrid_node::showstmt_node, TARGET_CLASS, TARGET_CLASS_ATTR, TARGET_JSON_TABLE, TARGET_LIST, TARGET_METHOD, TARGET_REGUVAL_LIST, TARGET_SET, TARGET_SHOWSTMT, access_spec_node::type, access_spec_node::where_key, access_spec_node::where_pred, access_spec_node::where_range, XASL_DECACHE_CLONE, XASL_IS_FLAGED, list_spec_node::xasl_node, and XASL_SET_FLAG.
Referenced by qexec_clear_xasl().
|
static |
Definition at line 2076 of file query_executor.c.
References cubxasl::aggregate_list_node::accumulator, cubxasl::aggregate_accumulator::clear_value2_at_clone_decache, cubxasl::aggregate_accumulator::clear_value_at_clone_decache, cubxasl::aggregate_list_node::domain, cubxasl::aggregate_list_node::next, cubxasl::aggregate_list_node::operands, cubxasl::aggregate_list_node::opr_dbtype, cubxasl::aggregate_list_node::original_domain, cubxasl::aggregate_list_node::original_opr_dbtype, p, pr_clear_value(), qexec_clear_regu_variable_list(), cubxasl::aggregate_accumulator::value, cubxasl::aggregate_accumulator::value2, XASL_DECACHE_CLONE, and XASL_IS_FLAGED.
Referenced by qexec_clear_xasl().
|
static |
Definition at line 24578 of file query_executor.c.
References buildvalue_proc_node::agg_list, assert, xasl_node::buildvalue, db_private_free_and_init, cubxasl::aggregate_list_node::function, cubxasl::aggregate_list_node::info, cubxasl::aggregate_list_node::next, NULL, cubxasl::aggregate_specific_function_info::percentile, cubxasl::aggregate_percentile_info::percentile_reguvar, xasl_node::proc, PT_CUME_DIST, PT_PERCENT_RANK, PT_PERCENTILE_CONT, PT_PERCENTILE_DISC, and qexec_clear_regu_var().
Referenced by qexec_clear_xasl().
|
static |
Definition at line 2662 of file query_executor.c.
References xasl_node::bptr_list, xasl_node::dptr_list, xasl_node::fptr_list, xasl_node::next, NULL, qexec_clear_head_lists(), qexec_clear_scan_all_lists(), and xasl_node::scan_ptr.
Referenced by qexec_intprt_fnc().
|
static |
Definition at line 2042 of file query_executor.c.
References cubxasl::analytic_list_node::domain, cubxasl::analytic_eval_type::head, cubxasl::analytic_list_node::init(), cubxasl::analytic_list_node::next, cubxasl::analytic_eval_type::next, cubxasl::analytic_list_node::operand, cubxasl::analytic_list_node::opr_dbtype, cubxasl::analytic_list_node::original_domain, cubxasl::analytic_list_node::original_opr_dbtype, p, cubxasl::analytic_list_node::part_value, pr_clear_value(), qexec_clear_regu_var(), cubxasl::analytic_list_node::value, and cubxasl::analytic_list_node::value2.
Referenced by qexec_clear_xasl().
|
static |
Definition at line 20278 of file query_executor.c.
References recdes::area_size, assert, analytic_function_state::cgtc_dbval, analytic_function_state::cgtc_nn_dbval, analytic_function_state::csktc_dbval, analytic_function_state::current_key, recdes::data, db_private_free_and_init, analytic_function_state::func_p, analytic_function_state::group_list_id, NULL, pr_clear_value(), qfile_close_list(), qfile_destroy_list(), qfile_free_list_id(), cubxasl::analytic_list_node::value, and analytic_function_state::value_list_id.
Referenced by qexec_clear_analytic_state().
|
static |
Definition at line 20310 of file query_executor.c.
References analytic_state::analytic_rec, recdes::area_size, analytic_state::curr_sort_page, recdes::data, db_private_free_and_init, analytic_state::func_count, analytic_state::func_state_list, i, analytic_state::input_scan, analytic_state::interm_file, analytic_state::interm_scan, analytic_state::key_info, qfile_list_scan_id::list_id, NULL, NULL_PAGEID, NULL_VOLID, analytic_state::output_file, analytic_state::output_tplrec, analytic_state::page_p, vpid::pageid, qexec_clear_analytic_function_state(), qfile_clear_sort_key_info(), qfile_close_list(), qfile_close_scan(), qfile_destroy_list(), qfile_free_list_id(), qmgr_free_old_page_and_init, qfile_list_id::tfile_vfid, vpid::volid, and analytic_state::vpid.
Referenced by qexec_execute_analytic().
|
static |
Definition at line 1415 of file query_executor.c.
References arith_list_node::domain, free_and_init, arith_list_node::leftptr, NO_ERROR, NULL, arith_list_node::original_domain, pr_clear_value(), arith_list_node::pred, qexec_clear_pred(), qexec_clear_regu_var(), arith_list_node::rand_seed, arith_list_node::rightptr, arith_list_node::thirdptr, and arith_list_node::value.
Referenced by qexec_clear_regu_var(), and qexec_clear_xasl().
|
static |
Definition at line 17164 of file query_executor.c.
References xasl_node::connect_by, connectby_proc_node::input_list_id, xasl_node::proc, qfile_close_list(), qfile_destroy_list(), and connectby_proc_node::start_with_list_id.
Referenced by qexec_execute_mainblock_internal().
|
static |
Definition at line 1653 of file query_executor.c.
References qproc_db_value_list::next, p, pr_clear_value(), and qproc_db_value_list::val.
Referenced by qexec_clear_access_spec_list(), and qexec_clear_xasl().
int qexec_clear_func_pred | ( | THREAD_ENTRY * | thread_p, |
func_pred * | fpr | ||
) |
Definition at line 21472 of file query_executor.c.
References func_pred::func_regu, NO_ERROR, and qexec_clear_regu_var().
Referenced by heap_eval_function_index(), heap_free_func_pred_unpack_info(), xbtree_load_index(), and xbtree_load_online_index().
|
static |
Definition at line 3594 of file query_executor.c.
References recdes::area_size, groupby_state::composite_lock, groupby_state::current_key, groupby_dimension::d_agg_list, recdes::data, db_private_free_and_init, groupby_state::eptr_list, groupby_state::g_dim, groupby_state::g_dim_levels, groupby_state::gby_rec, i, groupby_state::input_scan, groupby_state::key_info, qfile_list_scan_id::list_id, lock_finalize_composite_lock(), NULL, groupby_state::output_file, groupby_state::output_tplrec, QEXEC_CLEAR_AGG_LIST_VALUE, qexec_clear_head_lists(), qexec_gby_clear_group_dim(), qfile_clear_sort_key_info(), qfile_close_list(), qfile_close_scan(), QFILE_FREE_AND_INIT_LIST_ID, qmgr_free_old_page_and_init, and qfile_list_id::tfile_vfid.
Referenced by qexec_groupby(), and qexec_groupby_index().
|
static |
Definition at line 2613 of file query_executor.c.
References xasl_node::next, NULL, qexec_clear_xasl_head(), XASL_IS_FLAGED, and XASL_ZERO_CORR_LEVEL.
Referenced by qexec_clear_all_lists(), qexec_clear_groupby_state(), qexec_clear_pred_xasl(), qexec_clear_scan_all_lists(), qexec_execute_mainblock_internal(), qexec_execute_obj_fetch(), qexec_execute_scan(), qexec_intprt_fnc(), qexec_iterate_connect_by_results(), and qexec_merge_fnc().
|
static |
Definition at line 23246 of file query_executor.c.
References upddel_class_info_internal::attr_info, multi_index_unique_stats::clear(), upddel_class_info_internal::context, cubregex::count(), db_private_free_and_init, multi_index_unique_stats::destruct(), heap_attrinfo_end(), i, upddel_class_info_internal::is_attr_info_inited, locator_end_force_scan_cache(), upddel_class_info_internal::m_inited_scancache, upddel_class_info_internal::m_scancache, upddel_class_info_internal::m_unique_stats, upddel_class_info_internal::mvcc_extra_assign_reev, upddel_class_info_internal::needs_pruning, NULL, and partition_clear_pruning_context().
Referenced by qexec_create_internal_classes(), qexec_execute_delete(), and qexec_execute_update().
int qexec_clear_list_cache_by_class | ( | THREAD_ENTRY * | thread_p, |
const OID * | class_oid | ||
) |
Definition at line 14984 of file query_executor.c.
References xasl_cache_ent::list_ht_no, mht_get2(), NO_ERROR, NULL, and qfile_clear_list_cache().
Referenced by locator_delete_force_internal(), locator_insert_force(), locator_update_force(), qexec_execute_delete(), qexec_execute_increment(), qexec_execute_insert(), and qexec_execute_update().
|
static |
Definition at line 13460 of file query_executor.c.
References buildvalue_proc_node::agg_list, ARG_FILE_LINE, BUILD_SCHEMA_PROC, xasl_node::buildlist, BUILDLIST_PROC, xasl_node::buildvalue, BUILDVALUE_PROC, CONNECTBY_PROC, CTE_PROC, DELETE_PROC, DIFFERENCE_PROC, DO_PROC, ER_ERROR_SEVERITY, ER_QPROC_INVALID_XASLNODE, er_set(), INSERT_PROC, INTERSECTION_PROC, cubxasl::aggregate_list_node::list_id, xasl_node::list_id, MERGE_PROC, MERGELIST_PROC, cubxasl::aggregate_list_node::next, NULL, OBJFETCH_PROC, xasl_node::proc, qexec_destroy_upddel_ehash_files(), qfile_close_list(), qfile_destroy_list(), SCAN_PROC, xasl_node::type, UNION_PROC, and UPDATE_PROC.
Referenced by qexec_execute_mainblock_internal().
int qexec_clear_partition_expression | ( | THREAD_ENTRY * | thread_p, |
regu_variable_node * | expr | ||
) |
Definition at line 21490 of file query_executor.c.
References NO_ERROR, and qexec_clear_regu_var().
Referenced by partition_free_partition_predicate().
|
static |
Definition at line 1671 of file query_executor.c.
References qfile_tuple_value_position::dom, and qfile_tuple_value_position::original_domain.
Referenced by qexec_clear_regu_var(), and qexec_clear_sort_list().
|
static |
Definition at line 1703 of file query_executor.c.
References cubxasl::rlike_eval_term::case_sensitive, cubregex::clear(), cubxasl::rlike_eval_term::compiled_pattern, cubxasl::rlike_eval_term::compiled_regex, cubxasl::alsm_eval_term::elem, cubxasl::alsm_eval_term::elemset, cubxasl::like_eval_term::esc_char, cubxasl::eval_term::et, cubxasl::eval_term::et_alsm, cubxasl::eval_term::et_comp, cubxasl::eval_term::et_like, cubxasl::eval_term::et_rlike, cubxasl::eval_term::et_type, cubxasl::pred::lhs, cubxasl::comp_eval_term::lhs, cubxasl::pred_expr::m_eval_term, cubxasl::pred_expr::m_not_term, cubxasl::pred_expr::m_pred, NULL, cubxasl::like_eval_term::pattern, cubxasl::rlike_eval_term::pattern, cubxasl::pred_expr::pe, qexec_clear_regu_var(), cubxasl::pred::rhs, cubxasl::comp_eval_term::rhs, cubxasl::like_eval_term::src, cubxasl::rlike_eval_term::src, T_ALSM_EVAL_TERM, T_COMP_EVAL_TERM, T_EVAL_TERM, T_LIKE_EVAL_TERM, T_NOT_TERM, T_PRED, T_RLIKE_EVAL_TERM, and cubxasl::pred_expr::type.
Referenced by qexec_clear_access_spec_list(), qexec_clear_arith_list(), qexec_clear_pred_context(), and qexec_clear_xasl().
int qexec_clear_pred_context | ( | THREAD_ENTRY * | thread_p, |
pred_expr_with_context * | pred_filter, | ||
bool | dealloc_dbvalues | ||
) |
Definition at line 21447 of file query_executor.c.
References NO_ERROR, pred_expr_with_context::pred, qexec_clear_pred(), XASL_DECACHE_CLONE, and XASL_SET_FLAG.
Referenced by fpcache_entry_uninit(), locator_eval_filter_predicate(), xbtree_load_index(), and xbtree_load_online_index().
|
static |
Definition at line 24675 of file query_executor.c.
References cubxasl::alsm_eval_term::elemset, cubxasl::eval_term::et, cubxasl::eval_term::et_alsm, cubxasl::eval_term::et_comp, cubxasl::eval_term::et_type, cubxasl::pred::lhs, cubxasl::comp_eval_term::lhs, cubxasl::pred_expr::m_eval_term, cubxasl::pred_expr::m_not_term, cubxasl::pred_expr::m_pred, NULL, cubxasl::pred_expr::pe, qexec_clear_head_lists(), R_EXISTS, cubxasl::comp_eval_term::rel_op, cubxasl::pred::rhs, T_ALSM_EVAL_TERM, T_COMP_EVAL_TERM, T_EVAL_TERM, T_NOT_TERM, T_PRED, cubxasl::pred_expr::type, regu_variable_node::type, TYPE_LIST_ID, and regu_variable_node::xasl.
Referenced by qexec_iterate_connect_by_results().
|
static |
Definition at line 1610 of file query_executor.c.
References regu_variable_list_node::next, p, qexec_clear_regu_var(), and regu_variable_list_node::value.
Referenced by qexec_clear_access_spec_list(), qexec_clear_regu_var(), qexec_clear_xasl(), and qexec_start_mainblock_iterations().
|
static |
Definition at line 1632 of file query_executor.c.
References assert, regu_value_item::next, NULL, qexec_clear_regu_var(), regu_value_list::regu_list, and regu_value_item::value.
Referenced by qexec_clear_regu_var().
|
static |
Definition at line 1448 of file query_executor.c.
References assert, F_REGEXP_COUNT, F_REGEXP_INSTR, F_REGEXP_LIKE, F_REGEXP_REPLACE, F_REGEXP_SUBSTR, NULL, pr_clear_value(), qexec_clear_arith_list(), qexec_clear_pos_desc(), qexec_clear_regu_list(), qexec_clear_regu_value_list(), qexec_clear_regu_variable_list(), qexec_clear_xasl(), REGU_VARIABLE_CLEAR_AT_CLONE_DECACHE, REGU_VARIABLE_CLEAR_FLAG(), REGU_VARIABLE_FETCH_ALL_CONST, REGU_VARIABLE_FETCH_NOT_CONST, REGU_VARIABLE_IS_FLAGED(), TYPE_ATTR_ID, TYPE_CLASS_ATTR_ID, TYPE_CONSTANT, TYPE_DBVAL, TYPE_FUNC, TYPE_INARITH, TYPE_LIST_ID, TYPE_ORDERBY_NUM, TYPE_OUTARITH, TYPE_POSITION, TYPE_REGU_VAR_LIST, TYPE_REGUVAL_LIST, TYPE_SHARED_ATTR_ID, XASL_DECACHE_CLONE, XASL_IS_FLAGED, XASL_SET_FLAG, and xcache_uses_clones().
Referenced by qexec_clear_access_spec_list(), qexec_clear_agg_orderby_const_list(), qexec_clear_analytic_function_list(), qexec_clear_arith_list(), qexec_clear_func_pred(), qexec_clear_partition_expression(), qexec_clear_pred(), qexec_clear_regu_list(), qexec_clear_regu_value_list(), qexec_clear_regu_variable_list(), qexec_clear_update_assignment(), and qexec_clear_xasl().
|
static |
Definition at line 24614 of file query_executor.c.
References assert, regu_variable_list_node::next, NULL, port_close_memstream(), port_open_memstream(), qexec_clear_regu_var(), QUERY_TRACE_JSON, QUERY_TRACE_TEXT, session_set_trace_stats(), and regu_variable_list_node::value.
Referenced by qexec_clear_agg_list(), and qexec_clear_regu_var().
|
static |
Definition at line 2635 of file query_executor.c.
References xasl_node::bptr_list, xasl_node::dptr_list, xasl_node::fptr_list, NULL, qexec_clear_head_lists(), and xasl_node::scan_ptr.
Referenced by qexec_clear_all_lists().
Definition at line 1684 of file query_executor.c.
References sort_list::next, p, sort_list::pos_descr, and qexec_clear_pos_desc().
Referenced by qexec_clear_xasl().
|
static |
Definition at line 24402 of file query_executor.c.
References cubregex::count(), db_private_free_and_init, i, NULL, and pr_clear_value().
Referenced by qexec_add_tuple_to_topn(), qexec_clear_xasl(), and qexec_topn_tuples_to_list_id().
|
static |
Definition at line 2702 of file query_executor.c.
References update_assignment::clear_value_at_clone_decache, update_assignment::constant, NULL, pr_clear_value(), qexec_clear_regu_var(), update_assignment::regu_var, XASL_DECACHE_CLONE, and XASL_IS_FLAGED.
Referenced by qexec_clear_xasl().
int qexec_clear_xasl | ( | THREAD_ENTRY * | thread_p, |
xasl_node * | xasl, | ||
bool | is_final | ||
) |
Definition at line 2130 of file query_executor.c.
References buildlist_proc_node::a_eval_list, buildlist_proc_node::a_outptr_list, buildlist_proc_node::a_outptr_list_ex, buildlist_proc_node::a_outptr_list_interm, buildlist_proc_node::a_regu_list, buildlist_proc_node::a_val_list, connectby_proc_node::after_cb_regu_list_pred, connectby_proc_node::after_cb_regu_list_rest, connectby_proc_node::after_connect_by_pred, buildlist_proc_node::after_groupby_list, xasl_node::after_iscan_list, xasl_node::after_join_pred, buildvalue_proc_node::agg_list, xasl_node::aptr_list, fetch_proc_node::arg, assert, odku_info::assignments, update_proc_node::assigns, bh_destroy(), xasl_node::bptr_list, xasl_node::buildlist, BUILDLIST_PROC, xasl_node::buildvalue, BUILDVALUE_PROC, xasl_node::connect_by, xasl_node::connect_by_ptr, CONNECTBY_PROC, odku_info::cons_pred, update_proc_node::cons_pred, xasl_node::cte, CTE_PROC, xasl_node::curr_spec, db_private_free_and_init, xasl_node::dptr_list, binary_heap::element_count, buildlist_proc_node::eptr_list, xasl_node::fetch, xasl_node::flag, xasl_node::fptr_list, buildlist_proc_node::g_agg_list, buildlist_proc_node::g_grbynum_pred, buildlist_proc_node::g_grbynum_val, buildlist_proc_node::g_hash_eligible, buildlist_proc_node::g_having_pred, buildlist_proc_node::g_hk_scan_regu_list, buildlist_proc_node::g_hk_sort_regu_list, buildlist_proc_node::g_outptr_list, buildlist_proc_node::g_regu_list, buildlist_proc_node::g_scan_regu_list, buildlist_proc_node::g_val_list, buildvalue_proc_node::grbynum_val, buildlist_proc_node::groupby_list, buildvalue_proc_node::having_pred, i, xasl_node::if_pred, xasl_node::insert, INSERT_PROC, merge_proc_node::insert_xasl, xasl_node::instnum_pred, xasl_node::instnum_val, xasl_node::iscycle_val, xasl_node::isleaf_val, xasl_node::level_val, xasl_node::limit_offset, xasl_node::limit_row_count, xasl_node::list_id, lock_abort_composite_lock(), xasl_node::merge, MERGE_PROC, xasl_node::merge_spec, xasl_node::merge_val_list, regu_variable_list_node::next, xasl_node::next, cte_proc_node::non_recursive_part, NULL, odku_info::num_assigns, update_proc_node::num_assigns, insert_proc_node::num_val_lists, OBJFETCH_PROC, insert_proc_node::odku, xasl_node::ordbynum_pred, xasl_node::ordbynum_val, xasl_node::orderby_limit, xasl_node::orderby_list, buildvalue_proc_node::outarith_list, xasl_node::outptr_list, pr_clear_value(), connectby_proc_node::prior_outptr_list, connectby_proc_node::prior_regu_list_pred, connectby_proc_node::prior_regu_list_rest, connectby_proc_node::prior_val_list, xasl_node::proc, qexec_clear_access_spec_list(), qexec_clear_agg_list(), qexec_clear_agg_orderby_const_list(), qexec_clear_analytic_function_list(), qexec_clear_arith_list(), qexec_clear_db_val_list(), qexec_clear_pred(), qexec_clear_regu_list(), qexec_clear_regu_var(), qexec_clear_sort_list(), qexec_clear_topn_tuple(), qexec_clear_update_assignment(), qexec_clear_xasl(), qexec_clear_xasl_head(), qexec_destroy_upddel_ehash_files(), qexec_free_agg_hash_context(), QEXEC_GET_BH_TOPN_TUPLE, qfile_clear_list_id(), xasl_node::query_in_progress, cte_proc_node::recursive_part, connectby_proc_node::regu_list_pred, connectby_proc_node::regu_list_rest, scan_close_scan(), scan_end_scan(), SCAN_PROC, xasl_node::scan_ptr, fetch_proc_node::set_pred, xasl_node::spec_list, connectby_proc_node::start_with_pred, xasl_node::type, xasl_node::update, UPDATE_PROC, merge_proc_node::update_xasl, xasl_node::val_list, val_list_node::valp, insert_proc_node::valptr_lists, valptr_list_node::valptrp, regu_variable_list_node::value, XASL_DECACHE_CLONE, XASL_HAS_CONNECT_BY, XASL_IS_FLAGED, and XASL_SET_FLAG.
Referenced by qexec_clear_access_spec_list(), qexec_clear_regu_var(), qexec_clear_xasl(), qexec_execute_query(), and xcache_clone_decache().
|
static |
Definition at line 1358 of file query_executor.c.
References xasl_node::connect_by_ptr, i, xasl_node::list_id, qproc_db_value_list::next, pr_clear_value(), qfile_close_list(), qfile_destroy_list(), xasl_node::single_tuple, qproc_db_value_list::val, val_list_node::valp, XASL_DECACHE_CLONE, XASL_HAS_CONNECT_BY, XASL_IS_FLAGED, and xcache_uses_clones().
Referenced by qexec_clear_head_lists(), and qexec_clear_xasl().
|
static |
Definition at line 6755 of file query_executor.c.
References access_spec_node::access, ACCESS_METHOD_SEQUENTIAL, ACCESS_METHOD_SEQUENTIAL_PAGE_SCAN, ACCESS_METHOD_SEQUENTIAL_RECORD_INFO, db_private_free, IS_ANY_INDEX_ACCESS, NULL, perfmon_inc_stat(), PSTAT_QM_NUM_ISCANS, PSTAT_QM_NUM_LSCANS, PSTAT_QM_NUM_METHSCANS, PSTAT_QM_NUM_SETSCANS, PSTAT_QM_NUM_SSCANS, scan_close_scan(), TARGET_CLASS, TARGET_CLASS_ATTR, TARGET_JSON_TABLE, TARGET_LIST, TARGET_METHOD, TARGET_REGUVAL_LIST, TARGET_SET, TARGET_SHOWSTMT, and access_spec_node::type.
Referenced by qexec_execute_connect_by(), qexec_execute_delete(), qexec_execute_insert(), qexec_execute_mainblock_internal(), qexec_execute_update(), and qexec_merge_listfiles().
|
static |
Definition at line 4827 of file query_executor.c.
References cubregex::clear(), cmp, DB_EQ, DB_GT, DB_IS_NULL, DB_LT, DB_NEED_CLEAR, DB_UNK, i, NO_ERROR, NULL, or_init(), pr_clear_value(), pr_is_set_type(), PRIM_SET_NULL(), qexec_collection_has_null(), QFILE_GET_TUPLE_VALUE_LENGTH, QFILE_TUPLE_VALUE_HEADER_SIZE, TP_DOMAIN_TYPE, and tp_value_compare().
Referenced by qexec_merge_list(), and qexec_merge_list_outer().
|
static |
Definition at line 4771 of file query_executor.c.
References db_get_set(), DB_IS_NULL, db_set_get(), db_set_size(), DB_VALUE_DOMAIN_TYPE, i, NO_ERROR, pr_clear_value(), and pr_is_set_type().
Referenced by qexec_cmp_tpl_vals_merge().
|
static |
Definition at line 16366 of file query_executor.c.
References pr_type::cmpval(), tp_domain::collation_id, pr_type::data_readval(), DB_EQ, db_make_null(), DB_NEED_CLEAR, db_value::domain, qfile_tuple_value_type_list::domp, ER_FAILED, db_domain_info::general_info, i, db_domain_info::general_info::is_null, regu_variable_list_node::next, NO_ERROR, NULL, or_init(), PCOL_FIRST_TUPLE_OFFSET, pr_clear_value(), pr_is_set_type(), QFILE_GET_TUPLE_VALUE_LENGTH, QFILE_TUPLE_LENGTH_SIZE, QFILE_TUPLE_VALUE_HEADER_SIZE, TP_DOMAIN_TYPE, tp_domain::type, valptr_list_node::valptrp, and regu_variable_list_node::value.
Referenced by qexec_check_for_cycle().
|
static |
Definition at line 10094 of file query_executor.c.
References del_lob_info::attr_info, del_lob_info::class_hfid, upddel_class_info_internal::class_hfid, del_lob_info::class_oid, upddel_class_info_internal::class_oid, db_private_alloc, db_private_free, error(), heap_attrinfo_start(), upddel_class_info_internal::lob_attr_ids, del_lob_info::next, NO_ERROR, NULL, upddel_class_info_internal::num_lob_attrs, and qexec_failure_line().
Referenced by qexec_change_delete_lob_info().
|
static |
Definition at line 23074 of file query_executor.c.
References assert, upddel_class_info_internal::class_hfid, upddel_class_info::class_oid, upddel_class_info_internal::class_oid, multi_index_unique_stats::construct(), upddel_class_info_internal::context, cubregex::count(), upddel_class_info_internal::crt_del_lob_info, DB_NOT_PARTITIONED_CLASS, db_private_alloc, db_private_free, er_errid(), ER_FAILED, error(), upddel_class_info_internal::extra_assign_reev_cnt, i, upddel_class_info_internal::is_attr_info_inited, upddel_class_info_internal::lob_attr_ids, upddel_class_info_internal::m_inited_scancache, upddel_class_info_internal::m_unique_stats, upddel_class_info_internal::mvcc_extra_assign_reev, upddel_class_info_internal::mvcc_reev_assigns, upddel_class_info::needs_pruning, upddel_class_info_internal::needs_pruning, NO_ERROR, NULL, upddel_class_info_internal::num_lob_attrs, upddel_class_info_internal::oid, OID_SET_NULL, partition_init_pruning_context(), partition_load_pruning_context(), upddel_class_info_internal::prev_class_oid, qexec_clear_internal_classes(), upddel_class_info_internal::scan_cache, and upddel_class_info_internal::subclass_idx.
Referenced by qexec_execute_delete(), and qexec_execute_update().
|
static |
Definition at line 23166 of file query_executor.c.
References update_assignment::cls_idx, cubquery::update_mvcc_reev_assignment::constant, update_assignment::constant, cubregex::count(), db_private_alloc, ER_FAILED, upddel_class_info_internal::mvcc_reev_assigns, xasl_node::mvcc_reev_extra_cls_cnt, cubquery::update_mvcc_reev_assignment::next, regu_variable_list_node::next, NO_ERROR, NULL, xasl_node::outptr_list, xasl_node::upd_del_class_cnt, valptr_list_node::valptrp, and regu_variable_list_node::value.
Referenced by prepare_mvcc_reev_data().
|
static |
Definition at line 8490 of file query_executor.c.
References assert, xasl_node::buildlist, db_private_free, logtb_set_check_interrupt(), NO_ERROR, NULL, xasl_node::proc, xasl_node::upd_del_class_cnt, and xehash_destroy().
Referenced by qexec_clear_mainblock_iterations(), qexec_clear_xasl(), qexec_end_mainblock_iterations(), and qexec_start_mainblock_iterations().
|
static |
Definition at line 13177 of file query_executor.c.
References buildvalue_proc_node::agg_list, xasl_node::buildvalue, DB_PAGESIZE, db_private_alloc, db_private_free_and_init, qfile_tuple_value_type_list::domp, ER_FAILED, eval_pred(), GOTO_EXIT_ON_ERROR, buildvalue_proc_node::having_pred, xasl_node::list_id, NO_ERROR, NULL, xasl_node::option, xasl_node::orderby_list, xasl_node::outptr_list, xasl_node::proc, Q_DISTINCT, qdata_copy_valptr_list_to_tuple(), qdata_finalize_aggregate_list(), qdata_get_valptr_type_list(), qdata_set_valptr_list_unbound(), QEXEC_CLEAR_AGG_LIST_VALUE, qexec_generate_tuple_descriptor(), qfile_add_tuple_to_list(), qfile_close_list(), qfile_copy_list_id(), QFILE_FLAG_ALL, QFILE_FLAG_RESULT_FILE, QFILE_FREE_AND_INIT_LIST_ID, qfile_generate_tuple_into_list(), qfile_open_list(), QFILE_SET_FLAG, QPROC_TPLDESCR_FAILURE, QPROC_TPLDESCR_RETRY_BIG_REC, QPROC_TPLDESCR_RETRY_SET_TYPE, QPROC_TPLDESCR_SUCCESS, xasl_state::query_id, qfile_tuple_record::size, T_NORMAL, qfile_tuple_record::tpl, V_ERROR, V_TRUE, V_UNKNOWN, xasl_state::vd, XASL_IS_FLAGED, XASL_SKIP_ORDERBY_LIST, XASL_TO_BE_CACHED, and XASL_TOP_MOST_XASL.
Referenced by qexec_end_mainblock_iterations().
|
static |
Definition at line 17149 of file query_executor.c.
References xasl_node::connect_by, connectby_proc_node::input_list_id, xasl_node::proc, qfile_close_list(), and connectby_proc_node::start_with_list_id.
Referenced by qexec_execute_mainblock_internal().
|
static |
Definition at line 13328 of file query_executor.c.
References ARG_FILE_LINE, BUILD_SCHEMA_PROC, xasl_node::buildlist, BUILDLIST_PROC, BUILDVALUE_PROC, COMPOSITE_LOCK, CONNECTBY_PROC, CTE_PROC, DIFFERENCE_PROC, ER_ERROR_SEVERITY, ER_FAILED, ER_QPROC_INVALID_XASLNODE, er_set(), GOTO_EXIT_ON_ERROR, INTERSECTION_PROC, union_proc_node::left, xasl_node::list_id, LK_GRANTED, lock_finalize_composite_lock(), MERGELIST_PROC, NO_ERROR, NULL, xasl_node::option, xasl_node::orderby_list, xasl_node::proc, Q_DISTINCT, qexec_destroy_upddel_ehash_files(), qexec_end_buildvalueblock_iterations(), QEXEC_IS_MULTI_TABLE_UPDATE_DELETE, qexec_merge_listfiles(), qfile_close_list(), qfile_combine_two_list(), qfile_copy_list_id(), QFILE_FLAG_ALL, QFILE_FLAG_DIFFERENCE, QFILE_FLAG_DISTINCT, QFILE_FLAG_INTERSECT, QFILE_FLAG_RESULT_FILE, QFILE_FLAG_UNION, QFILE_FREE_AND_INIT_LIST_ID, QFILE_SET_FLAG, union_proc_node::right, xasl_node::scan_op_type, success(), xasl_node::type, xasl_node::union_, UNION_PROC, XASL_IS_FLAGED, XASL_MULTI_UPDATE_AGG, XASL_SKIP_ORDERBY_LIST, XASL_TO_BE_CACHED, and XASL_TOP_MOST_XASL.
Referenced by qexec_execute_build_columns(), qexec_execute_build_indexes(), qexec_execute_connect_by(), and qexec_execute_mainblock_internal().
|
static |
Definition at line 1101 of file query_executor.c.
References ACCESS_SPEC_CLS_OID, cubxasl::aggregate_list_node::accumulator, buildvalue_proc_node::agg_domains_resolved, buildvalue_proc_node::agg_list, xasl_node::aptr_list, ARG_FILE_LINE, assert, BUILD_SCHEMA_PROC, xasl_node::buildlist, BUILDLIST_PROC, xasl_node::buildvalue, BUILDVALUE_PROC, COMPOSITE_LOCK, DB_PAGESIZE, db_private_alloc, DB_TYPE_NULL, DB_TYPE_VARIABLE, cubxasl::aggregate_list_node::domain, er_errid(), ER_ERROR_SEVERITY, ER_FAILED, ER_QPROC_INVALID_QRY_SINGLE_TUPLE, er_set(), buildlist_proc_node::g_agg_domains_resolved, buildlist_proc_node::g_agg_list, buildlist_proc_node::g_hash_eligible, buildlist_proc_node::g_scan_regu_list, GOTO_EXIT_ON_ERROR, HS_REJECT_ALL, xasl_node::list_id, cubxasl::aggregate_list_node::next, regu_variable_list_node::next, xasl_node::next, NO_ERROR, NULL, xasl_node::outptr_list, xasl_node::proc, buildlist_proc_node::push_list_id, qdata_copy_valptr_list_to_tuple(), qdata_evaluate_aggregate_list(), qexec_add_composite_lock(), qexec_add_tuple_to_topn(), qexec_generate_tuple_descriptor(), qexec_hash_gby_agg_tuple(), QEXEC_IS_MULTI_TABLE_UPDATE_DELETE, qexec_resolve_domains_for_aggregation(), qexec_topn_tuples_to_list_id(), qexec_upddel_add_unique_oid_to_ehid(), qfile_add_tuple_to_list(), qfile_generate_tuple_into_list(), QPROC_TPLDESCR_FAILURE, QPROC_TPLDESCR_RETRY_BIG_REC, QPROC_TPLDESCR_RETRY_SET_TYPE, QPROC_TPLDESCR_SUCCESS, xasl_node::scan_op_type, xasl_node::selected_upd_list, qfile_tuple_record::size, xasl_node::spec_list, T_NORMAL, TOPN_FAILURE, TOPN_SUCCESS, TP_DOMAIN_COLL_NORMAL, TP_DOMAIN_COLLATION_FLAG, TP_DOMAIN_TYPE, qfile_tuple_record::tpl, qfile_list_id::tpl_descr, qfile_list_id::tuple_cnt, xasl_node::type, TYPE_CONSTANT, xasl_node::upd_del_class_cnt, valptr_list_node::valptrp, cubxasl::aggregate_accumulator::value, regu_variable_list_node::value, xasl_state::vd, XASL_IS_FLAGED, and XASL_MULTI_UPDATE_AGG.
Referenced by qexec_execute_build_columns(), qexec_execute_build_indexes(), qexec_intprt_fnc(), qexec_iterate_connect_by_results(), and qexec_merge_fnc().
|
static |
Definition at line 6829 of file query_executor.c.
References scan_end_scan().
Referenced by qexec_execute_connect_by(), qexec_execute_delete(), qexec_execute_insert(), qexec_execute_mainblock_internal(), and qexec_execute_update().
|
static |
Definition at line 3402 of file query_executor.c.
References db_data::bigint, db_value::data, eval_pred(), groupby_state::grbynum_flag, groupby_state::grbynum_pred, groupby_state::grbynum_val, NULL, V_ERROR, V_FALSE, V_TRUE, V_UNKNOWN, xasl_state::vd, XASL_G_GRBYNUM_FLAG_SCAN_CHECK, XASL_G_GRBYNUM_FLAG_SCAN_CONTINUE, XASL_G_GRBYNUM_FLAG_SCAN_STOP, and groupby_state::xasl_state.
Referenced by qexec_gby_finalize_group().
|
static |
Definition at line 706 of file query_executor.c.
References db_data::bigint, db_value::data, cubxasl::eval_term::et, cubxasl::eval_term::et_comp, cubxasl::eval_term::et_type, eval_pred(), xasl_node::instnum_flag, xasl_node::instnum_pred, xasl_node::instnum_val, cubxasl::comp_eval_term::lhs, cubxasl::pred_expr::m_eval_term, NULL, cubxasl::pred_expr::pe, R_LE, R_LT, cubxasl::comp_eval_term::rel_op, cubxasl::comp_eval_term::rhs, xasl_node::save_instnum_val, T_COMP_EVAL_TERM, T_EVAL_TERM, cubxasl::pred_expr::type, regu_variable_node::type, TYPE_CONSTANT, TYPE_POS_VALUE, V_ERROR, V_FALSE, V_TRUE, xasl_state::vd, XASL_INSTNUM_FLAG_SCAN_CHECK, XASL_INSTNUM_FLAG_SCAN_CONTINUE, XASL_INSTNUM_FLAG_SCAN_LAST_STOP, XASL_INSTNUM_FLAG_SCAN_STOP, and XASL_INSTNUM_FLAG_SCAN_STOP_AT_ANALYTIC.
Referenced by qexec_analytic_eval_instnum_pred(), qexec_intprt_fnc(), qexec_iterate_connect_by_results(), and qexec_merge_fnc().
|
static |
Definition at line 2787 of file query_executor.c.
References db_data::bigint, db_value::data, eval_pred(), NULL, ordbynum_info::ordbynum_flag, ordbynum_info::ordbynum_pred, ordbynum_info::ordbynum_val, V_ERROR, V_FALSE, V_TRUE, V_UNKNOWN, xasl_state::vd, XASL_ORDBYNUM_FLAG_SCAN_CHECK, XASL_ORDBYNUM_FLAG_SCAN_CONTINUE, XASL_ORDBYNUM_FLAG_SCAN_STOP, and ordbynum_info::xasl_state.
Referenced by qexec_ordby_put_next(), and qexec_topn_tuples_to_list_id().
|
static |
Definition at line 23732 of file query_executor.c.
References ACCESS_SPEC_CLS_OID, ACCESS_SPEC_HFID, cubxasl::aggregate_list_node::btid, COS_LOADED, COS_TO_LOAD, log_tran_class_cos::count_state, DB_PARTITION_CLASS, DB_PARTITIONED_CLASS, er_errid(), ER_FAILED, error(), cubxasl::aggregate_list_node::flag_agg_optimize, cubxasl::aggregate_list_node::function, LOG_FIND_TDES(), LOG_FIND_THREAD_TRAN_INDEX, logtb_get_mvcc_snapshot(), logtb_tran_find_btid_stats(), logtb_tran_find_class_cos(), log_tdes::mvccinfo, cubxasl::aggregate_list_node::next, NO_ERROR, NULL, OID_SET_NULL, partition_find_root_class_oid(), access_spec_node::pruning_type, PT_COUNT_STAR, qdata_evaluate_aggregate_optimize(), qexec_evaluate_partition_aggregates(), mvcc_info::snapshot, and mvcc_snapshot::valid.
Referenced by qexec_intprt_fnc().
|
static |
Definition at line 23665 of file query_executor.c.
References ACCESS_SPEC_HFID, cubxasl::aggregate_list_node::btid, BTID_COPY, cleanup(), db_private_free, error(), cubxasl::aggregate_list_node::flag_agg_optimize, cubxasl::aggregate_list_node::function, i, cubxasl::aggregate_list_node::next, NO_ERROR, NULL, PT_COUNT_STAR, qdata_evaluate_aggregate_hierarchy(), and qexec_init_agg_hierarchy_helpers().
Referenced by qexec_evaluate_aggregates_optimize().
|
static |
Definition at line 19273 of file query_executor.c.
References buildlist_proc_node::a_outptr_list, buildlist_proc_node::a_outptr_list_ex, buildlist_proc_node::a_outptr_list_interm, buildlist_proc_node::a_regu_list, buildlist_proc_node::a_val_list, ARG_FILE_LINE, ASSERT_ERROR_AND_SET, xasl_node::buildlist, analytic_state::cmp_fn, analytic_state::curr_sort_page, db_make_bigint(), db_private_free_and_init, qfile_tuple_value_type_list::domp, ER_ARG_CAN_NOT_BE_CASTED_TO_DESIRED_DOMAIN, ER_ERROR_SEVERITY, ER_FAILED, er_set(), SORTKEY_INFO::error, fcode_get_uppercase_name(), analytic_state::func_count, analytic_function_state::func_p, analytic_state::func_state_list, cubxasl::analytic_list_node::function, GOTO_EXIT_ON_ERROR, cubxasl::analytic_eval_type::head, i, analytic_state::input_recs, analytic_state::input_scan, xasl_node::instnum_val, analytic_state::interm_file, analytic_state::interm_scan, analytic_state::is_last_run, qfile_list_scan_id::keep_page_on_finish, analytic_state::key_info, cubxasl::analytic_list_node::list_id, qfile_list_scan_id::list_id, xasl_node::list_id, NO_ERROR, NO_SORT_LIMIT, NULL, NULL_PAGEID, NULL_VOLID, cubxasl::analytic_list_node::option, xasl_node::option, xasl_node::orderby_list, analytic_state::output_file, analytic_state::page_p, vpid::pageid, xasl_node::proc, Q_DISTINCT, qdata_get_valptr_type_list(), qexec_analytic_finalize_group(), qexec_analytic_get_next(), qexec_analytic_put_next(), qexec_analytic_update_group_result(), qexec_clear_analytic_state(), qexec_initialize_analytic_state(), qexec_resolve_domains_on_sort_list(), qfile_close_list(), qfile_close_scan(), qfile_compare_partial_sort_record(), qfile_copy_list_id(), qfile_destroy_list(), QFILE_FLAG_ALL, QFILE_FLAG_RESULT_FILE, qfile_free_list_id(), qfile_get_estimated_pages_for_sorting(), qfile_open_list(), qfile_open_list_scan(), QFILE_SET_FLAG, qmgr_free_old_page_and_init, xasl_state::query_id, SORT_DUP, cubxasl::analytic_eval_type::sort_list, sort_listfile(), analytic_state::state, qmgr_temp_file::tde_encrypted, qfile_list_id::tfile_vfid, qfile_list_id::tuple_cnt, qfile_list_id::type_list, SORTKEY_INFO::use_original, valptr_list_node::valptrp, vpid::volid, analytic_state::vpid, XASL_IS_FLAGED, XASL_SKIP_ORDERBY_LIST, analytic_state::xasl_state, XASL_TO_BE_CACHED, and XASL_TOP_MOST_XASL.
Referenced by qexec_execute_mainblock_internal().
|
static |
Definition at line 22620 of file query_executor.c.
References assert, ASSERT_ERROR, or_classrep::attributes, or_index::btid, BTID_IS_EQUAL, or_attribute::btids, BTREE_FOREIGN_KEY, BTREE_INDEX, BTREE_PRIMARY_KEY, BTREE_REVERSE_INDEX, BTREE_REVERSE_UNIQUE, BTREE_UNIQUE, or_classrep::class_attrs, hybrid_node::cls_node, cls_spec_node::cls_oid, tp_domain::collation_id, or_attribute::current_default_value, db_change_private_heap(), db_default_expression_string(), DB_DEFAULT_NONE, db_get_string(), DB_IS_NULL, db_make_int(), db_make_null(), db_make_string(), db_private_alloc, db_private_free_and_init, DB_TYPE_CHAR, DB_TYPE_ENUMERATION, DB_TYPE_NCHAR, db_type_to_db_domain(), DB_TYPE_VARCHAR, DB_TYPE_VARNCHAR, db_value_coerce(), or_attribute::def_order, or_default_value::default_expr, db_default_expr::default_expr_format, db_default_expr::default_expr_op, db_default_expr::default_expr_type, or_attribute::default_value, or_attribute::domain, er_errid(), ER_FAILED, error(), free_and_init, FULL_COLUMNS_SCHEMA, GOTO_EXIT_ON_ERROR, heap_classrepr_free_and_init, heap_classrepr_get(), heap_get_class_record(), heap_scancache_end(), heap_scancache_quick_start_root_hfid(), i, or_attribute::id, or_classrep::indexes, or_attribute::is_autoincrement, or_attribute::is_notnull, lang_get_collation_name(), xasl_node::list_id, or_classrep::n_attributes, or_attribute::n_btids, or_classrep::n_class_attrs, or_classrep::n_indexes, or_classrep::n_shared_attrs, db_value::need_clear, regu_variable_list_node::next, NO_ERROR, NULL, NULL_REPRID, or_attribute::on_update_expr, or_get_attrcomment(), or_get_attrname(), xasl_node::outptr_list, PEEK, pr_clear_value(), qdump_operator_type_string(), qexec_end_mainblock_iterations(), qexec_end_one_iteration(), qexec_failure_line(), qexec_get_attr_default(), qexec_schema_get_type_desc(), qexec_start_mainblock_iterations(), qfile_close_list(), qmgr_set_query_error(), xasl_state::query_id, REGU_VARIABLE_CLEAR_AT_CLONE_DECACHE, REGU_VARIABLE_IS_FLAGED(), access_spec_node::s, S_SUCCESS, cls_spec_node::schema_type, or_classrep::shared_attrs, xasl_node::spec_list, strlen, T_TO_CHAR, qfile_tuple_record::tpl, or_attribute::type, or_index::type, or_default_value::val_length, valcnv_convert_value_to_string(), valptr_list_node::valptr_cnt, valptr_list_node::valptrp, or_default_value::value, and regu_variable_list_node::value.
Referenced by qexec_execute_mainblock_internal().
|
static |
Definition at line 21651 of file query_executor.c.
References ARG_FILE_LINE, or_index::asc_desc, assert, ASSERT_ERROR, ASSERT_ERROR_AND_SET, or_function_index::attr_index_start, or_classrep::attributes, or_index::attrs_prefix_length, or_index::atts, or_index::btid, or_index::btname, btree_get_asc_desc(), btree_is_unique_type(), CATALOG_ACCESS_INFO_INITIALIZER, catalog_end_access_with_dir_oid(), catalog_free_representation_and_init, catalog_get_cardinality(), catalog_get_dir_oid_from_cache(), catalog_get_last_representation_id(), catalog_get_representation(), catalog_start_access_with_dir_oid(), catalog_access_info::class_oid, hybrid_node::cls_node, cls_spec_node::cls_oid, or_function_index::col_id, db_change_private_heap(), db_make_int(), db_make_null(), db_make_string(), db_private_free_and_init, catalog_access_info::dir_oid, er_errid(), ER_ERROR_SEVERITY, ER_FAILED, ER_OUT_OF_VIRTUAL_MEMORY, er_set(), error(), or_function_index::expr_string, free_and_init, or_index::func_index_info, GOTO_EXIT_ON_ERROR, heap_classrepr_free_and_init, heap_classrepr_get(), heap_get_class_record(), heap_scancache_end(), heap_scancache_quick_start_root_hfid(), i, or_attribute::id, or_index::index_status, or_classrep::indexes, or_attribute::is_notnull, xasl_node::list_id, or_classrep::n_attributes, or_index::n_atts, or_classrep::n_indexes, regu_variable_list_node::next, NO_ERROR, NULL, NULL_REPRID, xasl_node::option, or_class_name(), or_get_attrname(), or_get_constraint_comment(), OR_NORMAL_INDEX, xasl_node::ordbynum_val, xasl_node::orderby_list, xasl_node::outptr_list, PEEK, pr_clear_value(), Q_DISTINCT, qexec_end_mainblock_iterations(), qexec_end_one_iteration(), qexec_failure_line(), qexec_orderby_distinct(), qexec_start_mainblock_iterations(), qfile_close_list(), qmgr_set_query_error(), xasl_state::query_id, REGU_VARIABLE_CLEAR_AT_CLONE_DECACHE, REGU_VARIABLE_IS_FLAGED(), access_spec_node::s, S_LOCK, S_SUCCESS, xasl_node::spec_list, strdup(), qfile_tuple_record::tpl, qfile_list_id::tuple_cnt, or_index::type, valptr_list_node::valptr_cnt, valptr_list_node::valptrp, regu_variable_list_node::value, XASL_IS_FLAGED, XASL_SKIP_ORDERBY_LIST, and XASL_USES_MRO.
Referenced by qexec_execute_mainblock_internal().
|
static |
Definition at line 15081 of file query_executor.c.
References access_spec_node::access, ACCESS_METHOD_INDEX, ARG_FILE_LINE, assert, bf2df_str_cmpdisk(), bf2df_str_cmpval(), bf2df_str_son_index(), xasl_node::connect_by, qfile_list_scan_id::curr_pgptr, xasl_node::curr_spec, DB_DEFAULT_PRECISION, DB_IS_NULL, db_make_bit(), db_make_int(), db_make_string(), db_private_free_and_init, qfile_tuple_value_position::dom, qfile_tuple_value_type_list::domp, ER_ERROR_SEVERITY, ER_FAILED, ER_QPROC_CYCLE_DETECTED, er_set(), eval_pred(), fetch_val_list(), GOTO_EXIT_ON_ERROR, xasl_node::if_pred, access_spec_node::indexptr, key_range::key1, key_range::key2, key_info::key_cnt, indx_info::key_info, key_info::key_ranges, xasl_node::level_val, qfile_list_scan_id::list_id, xasl_node::list_id, hybrid_node::list_node, list_spec_node::list_regu_list_probe, regu_variable_list_node::next, sort_list::next, xasl_node::next_scan_block_on, NO_ERROR, NULL, xasl_node::orderby_list, xasl_node::outptr_list, PCOL_INDEX_STRING_TUPLE_OFFSET, PCOL_ISCYCLE_TUPLE_OFFSET, PCOL_ISLEAF_TUPLE_OFFSET, PCOL_PARENTPOS_TUPLE_OFFSET, PEEK, sort_list::pos_descr, qfile_tuple_value_position::pos_no, pr_clear_value(), connectby_proc_node::prior_outptr_list, connectby_proc_node::prior_regu_list_pred, connectby_proc_node::prior_regu_list_rest, xasl_node::proc, qdata_copy_valptr_list_to_tuple(), qdata_get_valptr_type_list(), qexec_check_for_cycle(), qexec_close_scan(), qexec_end_mainblock_iterations(), qexec_end_scan(), qexec_get_index_pseudocolumn_value_from_tuple(), qexec_get_tuple_column_value(), qexec_init_index_pseudocolumn_strings(), qexec_insert_tuple_into_list(), qexec_listfile_orderby(), qexec_next_scan_block_iterations(), qexec_open_scan(), qexec_recalc_tuples_parent_pos_in_list(), qexec_replace_prior_regu_vars(), qexec_replace_prior_regu_vars_pred(), qexec_reset_pseudocolumns_val_pointers(), qexec_set_pseudocolumns_val_pointers(), qexec_start_mainblock_iterations(), qfile_add_tuple_get_pos_in_list(), qfile_close_list(), qfile_close_scan(), qfile_destroy_list(), QFILE_FREE_AND_INIT_LIST_ID, qfile_free_sort_list(), qfile_open_list(), qfile_open_list_scan(), qfile_scan_list_next(), qfile_set_tuple_column_value(), qmgr_free_old_page_and_init, xasl_state::query_id, REINTERPRET_CAST, access_spec_node::s, S_ASC, S_CLOSED, S_END, S_ERROR, sort_list::s_nulls, S_NULLS_FIRST, sort_list::s_order, S_SELECT, S_SUCCESS, scan_next_scan(), pr_type::set_cmpval_function(), pr_type::set_data_cmpdisk_function(), qfile_tuple_record::size, qfile_list_id::sort_list, xasl_node::spec_list, connectby_proc_node::start_with_list_id, qfile_list_scan_id::status, TARGET_LIST, qfile_list_id::tfile_vfid, tp_Bit_domain, tp_Integer_domain, tp_String, tp_String_domain, qfile_tuple_record::tpl, qfile_tuple_position::tpl, tp_domain::type, access_spec_node::type, V_ERROR, V_TRUE, xasl_node::val_list, valptr_list_node::valptr_cnt, regu_variable_list_node::value, xasl_state::vd, qfile_tuple_position::vpid, access_spec_node::where_key, access_spec_node::where_pred, XASL_HAS_NOCYCLE, XASL_IGNORE_CYCLES, and XASL_IS_FLAGED.
Referenced by qexec_execute_mainblock_internal().
|
static |
Definition at line 15820 of file query_executor.c.
References buildlist_proc_node::a_eval_list, ARG_FILE_LINE, xasl_node::buildlist, BUILDVALUE_PROC, xasl_node::cte, ER_BUILDVALUE_IN_REC_CTE, ER_CTE_MAX_RECURSION_REACHED, ER_ERROR_SEVERITY, ER_FAILED, er_set(), GOTO_EXIT_ON_ERROR, buildlist_proc_node::groupby_list, xasl_node::instnum_val, xasl_node::list_id, hybrid_node::list_node, xasl_node::max_iterations, NO_ERROR, cte_proc_node::non_recursive_part, NULL, xasl_node::orderby_list, prm_get_integer_value(), PRM_ID_CTE_MAX_RECURSIONS, xasl_node::proc, qexec_execute_mainblock(), qexec_failure_line(), qfile_clear_list_id(), qfile_combine_two_list(), qfile_copy_list_id(), QFILE_FLAG_ALL, QFILE_FLAG_UNION, QFILE_FREE_AND_INIT_LIST_ID, qfile_reopen_list_as_append_mode(), QFILE_SET_FLAG, qfile_unify_types(), cte_proc_node::recursive_part, access_spec_node::s, xasl_node::spec_list, qfile_list_id::tuple_cnt, xasl_node::type, and list_spec_node::xasl_node.
Referenced by qexec_execute_mainblock_internal().
|
static |
Definition at line 9603 of file query_executor.c.
References xasl_node::aptr_list, ARG_FILE_LINE, assert, del_lob_info::attr_info, bool, upddel_class_instances_lock_info::class_oid, upddel_class_info::class_oid, upddel_class_info_internal::class_oid, delete_proc_node::classes, COPY_OID, cubquery::mvcc_update_reev_data::copyarea, xasl_node::curr_spec, cubquery::mvcc_update_reev_data::curr_upddel, db_elo_delete(), db_get_elo(), db_get_oid(), DB_IS_NULL, DB_NOT_PARTITIONED_CLASS, db_private_free, db_private_free_and_init, DB_TYPE_BLOB, DB_TYPE_CLOB, db_value_is_null(), db_value_type(), xasl_node::delete_, ER_FAILED, er_log_debug, ER_MVCC_NOT_SATISFIED_REEVALUATION, error(), GOTO_EXIT_ON_ERROR, heap_attrinfo_read_dbvalues(), heap_get_visible_version(), i, upddel_class_instances_lock_info::instances_locked, internal_classes, LC_FLUSH_DELETE, xasl_node::list_id, locator_attribute_info_force(), locator_free_copy_area(), LOG_RESULT_TOPOP_ABORT, LOG_RESULT_TOPOP_ATTACH_TO_OUTER, logtb_get_mvcc_snapshot(), MIN_NUM_ROWS_FOR_MULTI_DELETE, MULTI_ROW_DELETE, cubquery::mvcc_update_reev_data::mvcc_cond_reev_list, delete_proc_node::mvcc_reev_classes, qproc_db_value_list::next, NO_ERROR, delete_proc_node::no_logging, NULL, NULL_CHN, delete_proc_node::num_classes, delete_proc_node::num_reev_classes, upddel_class_info::num_subclasses, upddel_class_info_internal::oid, OID_EQ, db_identifier::pageid, PEEK, pr_clear_value(), prepare_mvcc_reev_data(), xasl_node::proc, qexec_change_delete_lob_info(), qexec_clear_internal_classes(), qexec_clear_list_cache_by_class(), qexec_close_scan(), qexec_create_internal_classes(), qexec_end_scan(), qexec_execute_mainblock(), qexec_failure_line(), qexec_free_delete_lob_info_list(), qexec_mvcc_cond_reev_set_scan_order(), qexec_next_scan_block_iterations(), qexec_open_scan(), qexec_process_partition_unique_stats(), qexec_process_unique_stats(), qexec_set_class_locks(), qexec_setup_list_id(), qexec_upddel_mvcc_set_filters(), qexec_upddel_setup_current_class(), QFILE_IS_LIST_CACHE_DISABLED, qmgr_add_modified_class(), xasl_state::query_id, RECDES_INITIALIZER, REPL_INFO_TYPE_RBR_NORMAL, S_END, S_ERROR, S_SELECT, S_SUCCESS, scan_next_scan(), xasl_node::scan_op_type, cubquery::mvcc_reev_data::set_update_reevaluation(), SINGLE_ROW_DELETE, db_identifier::slotid, xasl_node::spec_list, TRAN_ACTIVE, qfile_list_id::tuple_cnt, UPDATE_INPLACE_NONE, qproc_db_value_list::val, scan_id_struct::val_list, xasl_node::val_list, val_list_node::valp, xasl_state::vd, db_identifier::volid, xtran_server_end_topop(), and xtran_server_start_topop().
Referenced by qexec_execute_mainblock_internal().
|
static |
Definition at line 17930 of file query_executor.c.
References error(), fetch_peek_dbval(), regu_variable_list_node::next, NO_ERROR, NULL, xasl_node::outptr_list, pr_clear_value(), valptr_list_node::valptrp, regu_variable_list_node::value, and xasl_state::vd.
Referenced by qexec_execute_mainblock_internal().
|
static |
Definition at line 10677 of file query_executor.c.
References ARG_FILE_LINE, assert, ASSERT_ERROR, ASSERT_ERROR_AND_SET, assert_release, odku_info::assignments, odku_info::attr_ids, odku_info::attr_info, BTREE_IS_MULTI_ROW_OP, heap_scancache::cache_last_fix_page, odku_info::cons_pred, update_assignment::constant, COPY, DB_PARTITIONED_CLASS, er_clear(), er_errid(), ER_ERROR_SEVERITY, ER_FAILED, ER_INTERRUPTED, ER_MVCC_NOT_SATISFIED_REEVALUATION, ER_NULL_CONSTRAINT_VIOLATION, er_set(), error(), eval_pred(), fetch_peek_dbval(), heap_attrinfo_clear_dbvalues(), heap_attrinfo_read_dbvalues(), heap_attrinfo_set(), heap_get_visible_version(), LC_FLUSH_UPDATE, locator_attribute_info_force(), MULTI_ROW_UPDATE, NO_ERROR, NULL, NULL_CHN, odku_info::num_assigns, OID_EQ, OID_ISNULL, OID_SET_NULL, or_set_rep_id(), PEEK, qexec_oid_of_duplicate_key_update(), REC_HOME, update_assignment::regu_var, REPL_INFO_TYPE_RBR_NORMAL, pruning_context::root_oid, pruning_context::root_repr_id, S_SUCCESS, SINGLE_ROW_UPDATE, UPDATE_INPLACE_NONE, V_ERROR, V_TRUE, and V_UNKNOWN.
Referenced by qexec_execute_insert().
|
static |
Definition at line 12235 of file query_executor.c.
References ARG_FILE_LINE, assert, ER_FAILED, er_log_debug, ER_MVCC_NOT_SATISFIED_REEVALUATION, error(), heap_attrinfo_clear_dbvalues(), heap_attrinfo_end(), heap_attrinfo_start(), heap_attrvalue_locate(), HFID_IS_NULL, LC_FLUSH_UPDATE, locator_attribute_info_force(), locator_end_force_scan_cache(), locator_start_force_scan_cache(), NO_ERROR, NULL, db_identifier::pageid, qexec_clear_list_cache_by_class(), QFILE_IS_LIST_CACHE_DISABLED, qmgr_add_modified_class(), REPL_INFO_TYPE_RBR_NORMAL, SINGLE_ROW_UPDATE, db_identifier::slotid, UPDATE_INPLACE_NONE, and db_identifier::volid.
Referenced by qexec_execute_selupd_list().
|
static |
Definition at line 10871 of file query_executor.c.
References xasl_node::aptr_list, ARG_FILE_LINE, assert, ASSERT_ERROR, insert_proc_node::att_id, odku_info::attr_info, bool, insert_proc_node::class_hfid, insert_proc_node::class_oid, log_tdes::client, insert_proc_node::cons_pred, CONST_CAST, COPY_OID, xasl_node::curr_spec, or_attribute::current_default_value, db_datetime::date, db_datetime_decode(), db_datetime_to_timestamp(), DB_DEFAULT_CURR_USER, DB_DEFAULT_CURRENTDATE, DB_DEFAULT_CURRENTDATETIME, DB_DEFAULT_CURRENTTIME, DB_DEFAULT_CURRENTTIMESTAMP, DB_DEFAULT_NONE, DB_DEFAULT_SYSDATE, DB_DEFAULT_SYSDATETIME, DB_DEFAULT_SYSTIME, DB_DEFAULT_SYSTIMESTAMP, DB_DEFAULT_UNIX_TIMESTAMP, DB_DEFAULT_USER, DB_IS_NULL, db_make_date(), db_make_datetime(), db_make_int(), db_make_null(), db_make_oid(), db_make_string(), db_make_time(), db_make_timestamp(), DB_NOT_PARTITIONED_CLASS, db_private_alloc, db_private_free_and_init, db_timestamp_encode_sys(), db_to_char(), DB_TYPE_STRING, db_unix_timestamp(), clientids::db_user, db_value_put_encoded_date(), db_value_put_encoded_time(), DB_VALUE_TYPE, or_default_value::default_expr, db_default_expr::default_expr_format, db_default_expr::default_expr_op, db_default_expr::default_expr_type, insert_proc_node::do_replace, or_attribute::domain, DOMAIN_COMPATIBLE, xasl_node::dptr_list, er_errid(), ER_ERROR_SEVERITY, ER_FAILED, er_log_debug, ER_NULL_CONSTRAINT_VIOLATION, ER_OUT_OF_VIRTUAL_MEMORY, ER_REFERENCE_TO_NON_REFERABLE_NOT_ALLOWED, er_set(), error(), eval_pred(), fetch_peek_dbval(), FILE_HEAP_REUSE_SLOTS, heap_scancache::file_type, clientids::get_db_user(), clientids::get_host_name(), multi_index_unique_stats::get_map(), GOTO_EXIT_ON_ERROR, insert_proc_node::has_uniques, heap_attrinfo_clear_dbvalues(), heap_attrinfo_end(), heap_attrinfo_set(), heap_attrinfo_start(), heap_attrinfo_start_with_index(), heap_free_func_pred_unpack_info(), heap_init_func_pred_unpack_info(), heap_locate_last_attrepr(), heap_set_autoincrement_value(), HFID_COPY, clientids::host_name, i, if(), xasl_node::insert, or_attribute::is_autoincrement, IX_LOCK, lang_set_flag_from_lang(), LC_FLUSH_INSERT, xasl_node::list_id, LK_GRANTED, LK_UNCOND_LOCK, locator_attribute_info_force(), locator_end_force_scan_cache(), locator_start_force_scan_cache(), lock_object(), LOG_FIND_TDES(), LOG_FIND_THREAD_TRAN_INDEX, LOG_RESULT_TOPOP_ABORT, LOG_RESULT_TOPOP_ATTACH_TO_OUTER, logtb_tran_update_unique_stats(), heap_scancache::m_index_stats, MULTI_ROW_INSERT, db_value::need_clear, qproc_db_value_list::next, NO_ERROR, insert_proc_node::no_logging, NULL, insert_proc_node::num_default_expr, insert_proc_node::num_val_lists, insert_proc_node::num_vals, insert_proc_node::obj_oid, insert_proc_node::odku, OID_ISNULL, oid_Root_class_oid, db_identifier::pageid, partition_clear_pruning_context(), partition_init_pruning_context(), partition_load_pruning_context(), pr_clear_value(), pr_clone_value(), prm_get_string_value(), PRM_ID_INTL_DATE_LANG, xasl_node::proc, insert_proc_node::pruning_type, qdata_copy_db_value(), qexec_clear_list_cache_by_class(), qexec_close_scan(), qexec_end_scan(), qexec_execute_duplicate_key_update(), qexec_execute_mainblock(), qexec_failure_line(), qexec_get_attr_default(), qexec_next_scan_block_iterations(), qexec_open_scan(), qexec_process_partition_unique_stats(), qexec_remove_duplicates_for_replace(), qexec_setup_list_id(), qfile_clear_list_id(), qfile_fast_val_tuple_to_list(), QFILE_IS_LIST_CACHE_DISABLED, qmgr_add_modified_class(), xasl_state::query_id, qfile_list_id::query_id, rc, REGU_VARIABLE_STRICT_TYPE_CAST, REPL_INFO_TYPE_RBR_NORMAL, S_END, S_SELECT, S_SUCCESS, scan_next_scan(), xasl_node::scan_op_type, session_begin_insert_values(), session_reset_cur_insert_id(), SINGLE_ROW_INSERT, db_identifier::slotid, xasl_node::spec_list, strlen, val_descr::sys_datetime, T_TO_CHAR, db_datetime::time, tp_domain_resolve_default(), tp_domain_resolve_value(), tp_domain_status_er_set(), TP_DOMAIN_TYPE, TP_IS_CHAR_TYPE, tp_value_cast(), TRAN_ACTIVE, qfile_list_id::tuple_cnt, tz_conv_tz_datetime_w_region(), tz_conv_tz_time_w_zone_name(), tz_get_session_local_timezone(), tz_get_session_tz_region(), tz_get_system_timezone(), tz_get_system_tz_region(), UPDATE_INPLACE_NONE, V_ERROR, V_TRUE, V_UNKNOWN, qproc_db_value_list::val, or_default_value::val_length, scan_id_struct::val_list, xasl_node::val_list, val_list_node::valp, insert_proc_node::valptr_lists, valptr_list_node::valptrp, insert_proc_node::vals, regu_variable_list_node::value, xasl_state::vd, db_identifier::volid, XASL_IS_FLAGED, XASL_LINK_TO_REGU_VARIABLE, XASL_RETURN_GENERATED_KEYS, xtran_server_end_topop(), and xtran_server_start_topop().
Referenced by qexec_execute_mainblock_internal(), and qexec_execute_merge().
int qexec_execute_mainblock | ( | THREAD_ENTRY * | thread_p, |
xasl_node * | xasl, | ||
xasl_state * | xstate, | ||
UPDDEL_CLASS_INSTANCE_LOCK_INFO * | p_class_instance_lock_info | ||
) |
Definition at line 13517 of file query_executor.c.
References ARG_FILE_LINE, ER_ERROR_SEVERITY, ER_MAX_RECURSION_SQL_DEPTH, er_set(), error(), NO_ERROR, prm_get_integer_value(), PRM_ID_MAX_RECURSION_SQL_DEPTH, PSTAT_PB_NUM_FETCHES, PSTAT_PB_NUM_IOREADS, qexec_execute_mainblock_internal(), thread_dec_recursion_depth(), thread_get_recursion_depth(), thread_inc_recursion_depth(), thread_is_on_trace(), TSC_ADD_TIMEVAL, tsc_elapsed_time_usec(), and tsc_getticks().
Referenced by qexec_execute_cte(), qexec_execute_delete(), qexec_execute_insert(), qexec_execute_mainblock_internal(), qexec_execute_merge(), qexec_execute_obj_fetch(), qexec_execute_query(), qexec_execute_scan(), qexec_execute_update(), qexec_gby_finalize_group(), qexec_intprt_fnc(), and qexec_merge_fnc().
|
static |
Definition at line 13641 of file query_executor.c.
References buildlist_proc_node::a_eval_list, access_spec_node::access, xasl_node::after_iscan_list, buildvalue_proc_node::agg_domains_resolved, buildvalue_proc_node::agg_list, xasl_node::aptr_list, ARG_FILE_LINE, assert, BUILD_SCHEMA_PROC, xasl_node::buildlist, BUILDLIST_PROC, xasl_node::buildvalue, BUILDVALUE_PROC, CHECK_MODIFICATION_NO_RETURN, upddel_class_instances_lock_info::class_oid, hybrid_node::cls_node, cls_spec_node::cls_oid, COLUMNS_SCHEMA, COMPOSITE_LOCK, xasl_node::connect_by_ptr, CONNECTBY_PROC, CTE_PROC, xasl_node::curr_spec, db_private_alloc, db_private_free_and_init, xasl_node::delete_, DELETE_PROC, DIFFERENCE_PROC, DO_PROC, xasl_node::dptr_list, buildlist_proc_node::eptr_list, er_errid(), ER_ERROR_SEVERITY, ER_FAILED, er_log_debug, ER_QPROC_INVALID_QRY_SINGLE_TUPLE, er_set(), error(), FULL_COLUMNS_SCHEMA, buildlist_proc_node::g_agg_domains_resolved, buildlist_proc_node::g_agg_list, buildlist_proc_node::g_hash_eligible, GOTO_EXIT_ON_ERROR, buildlist_proc_node::groupby_list, indx_info::groupby_skip, INDEX_SCHEMA, access_spec_node::indexptr, mergelist_proc_node::inner_xasl, xasl_node::insert, INSERT_PROC, merge_proc_node::insert_xasl, upddel_class_instances_lock_info::instances_locked, INTERSECTION_PROC, IS_ANY_INDEX_ACCESS, key_info::is_constant, xasl_node::is_single_tuple, xasl_node::iscan_oid_order, JOIN_INNER, JOIN_LEFT, JOIN_RIGHT, qfile_list_merge_info::join_type, indx_info::key_info, xasl_node::limit_offset, xasl_node::limit_row_count, xasl_node::list_id, LK_GRANTED, lock_abort_composite_lock(), lock_finalize_composite_lock(), lock_initialize_composite_lock(), lock_is_instant_lock_mode(), lock_start_instant_lock_mode(), lock_stop_instant_lock_mode(), LOG_FIND_THREAD_TRAN_INDEX, mergelist_proc_node::ls_merge, xasl_node::merge, MERGE_PROC, xasl_node::merge_spec, xasl_node::merge_val_list, xasl_node::mergelist, MERGELIST_PROC, cubxasl::aggregate_list_node::next, cubxasl::analytic_eval_type::next, access_spec_node::next, xasl_node::next, xasl_node::next_scan_block_on, NO_ERROR, NULL, OID_EQ, xasl_node::option, xasl_node::ordbynum_val, xasl_node::orderby_list, mergelist_proc_node::outer_xasl, perfmon_inc_stat(), xasl_node::proc, PSTAT_PB_NUM_FETCHES, PSTAT_PB_NUM_IOREADS, PSTAT_QM_NUM_DELETES, PSTAT_QM_NUM_INSERTS, PSTAT_QM_NUM_MJOINS, PSTAT_QM_NUM_NLJOINS, PSTAT_QM_NUM_SELECTS, PSTAT_QM_NUM_UPDATES, buildlist_proc_node::push_list_id, Q_ALL, Q_DISTINCT, qdata_get_single_tuple_from_list_id(), qexec_alloc_agg_hash_context(), qexec_check_limit_clause(), qexec_clear_connect_by_lists(), qexec_clear_head_lists(), qexec_clear_mainblock_iterations(), qexec_close_scan(), qexec_end_connect_by_lists(), qexec_end_mainblock_iterations(), qexec_end_scan(), qexec_execute_analytic(), qexec_execute_build_columns(), qexec_execute_build_indexes(), qexec_execute_connect_by(), qexec_execute_cte(), qexec_execute_delete(), qexec_execute_do_stmt(), qexec_execute_insert(), qexec_execute_mainblock(), qexec_execute_merge(), qexec_execute_scan(), qexec_execute_selupd_list(), qexec_execute_update(), qexec_failure_line(), qexec_for_update_set_class_locks(), qexec_free_agg_hash_context(), qexec_groupby(), qexec_groupby_index(), qexec_intprt_fnc(), QEXEC_IS_MULTI_TABLE_UPDATE_DELETE, qexec_iterate_connect_by_results(), qexec_merge_fnc(), qexec_open_scan(), qexec_orderby_distinct(), QEXEC_SEL_UPD_USE_REEVALUATION, qexec_start_connect_by_lists(), qexec_start_mainblock_iterations(), qfile_close_list(), qfile_copy_list_id(), qfile_is_sort_list_covered(), qmgr_set_query_error(), QPROC_MAX_GROUPED_SCAN_CNT, QPROC_NO_SINGLE_OUTER, QPROC_SINGLE_CLASS_GROUPED_SCAN, xasl_state::query_id, query_multi_range_opt_check_set_sort_col(), access_spec_node::s, S_SUCCESS, xasl_node::scan_op_type, xasl_node::scan_ptr, cls_spec_node::schema_type, xasl_node::selected_upd_list, access_spec_node::single_fetch, xasl_node::single_tuple, xasl_node::spec_list, TARGET_CLASS, TARGET_CLASS_ATTR, thread_is_on_trace(), qfile_tuple_record::tpl, TSC_ADD_TIMEVAL, tsc_elapsed_time_usec(), tsc_getticks(), qfile_list_id::tuple_cnt, access_spec_node::type, xasl_node::type, qfile_tuple_value_type_list::type_cnt, qfile_list_id::type_list, UNION_PROC, xasl_node::update, UPDATE_PROC, merge_proc_node::update_xasl, xasl_node::val_list, xasl_state::vd, selupd_list::wait_msecs, update_proc_node::wait_msecs, insert_proc_node::wait_msecs, delete_proc_node::wait_msecs, XASL_HAS_CONNECT_BY, XASL_IS_FLAGED, XASL_LINK_TO_REGU_VARIABLE, XASL_MULTI_UPDATE_AGG, XASL_NO_FIXED_SCAN, XASL_SKIP_ORDERBY_LIST, XASL_TOP_MOST_XASL, XASL_USES_MRO, XASL_WAIT_MSECS_NOCHANGE, and xlogtb_reset_wait_msecs().
Referenced by qexec_execute_mainblock().
|
static |
Definition at line 23452 of file query_executor.c.
References xasl_node::aptr_list, error(), GOTO_EXIT_ON_ERROR, merge_proc_node::has_delete, merge_proc_node::insert_xasl, xasl_node::list_id, LOG_RESULT_TOPOP_ABORT, LOG_RESULT_TOPOP_ATTACH_TO_OUTER, xasl_node::merge, NO_ERROR, NULL, perfmon_inc_stat(), xasl_node::proc, PSTAT_QM_NUM_INSERTS, PSTAT_QM_NUM_UPDATES, qexec_execute_insert(), qexec_execute_mainblock(), qexec_execute_update(), qexec_setup_list_id(), TRAN_ACTIVE, qfile_list_id::tuple_cnt, merge_proc_node::update_xasl, xtran_server_end_topop(), and xtran_server_start_topop().
Referenced by qexec_execute_mainblock_internal().
|
static |
Definition at line 11789 of file query_executor.c.
References ACCESS_SPEC_CLS_OID, xasl_node::aptr_list, fetch_proc_node::arg, assert, cls_spec_node::attrids_pred, cls_spec_node::attrids_rest, xasl_node::bptr_list, cls_spec_node::cache_pred, cls_spec_node::cache_rest, hybrid_node::cls_node, cls_spec_node::cls_regu_list_pred, cls_spec_node::cls_regu_list_rest, COPY, db_get_oid(), db_get_set(), DB_IS_NULL, db_set_get(), db_set_size(), DB_TYPE_OID, DB_TYPE_VOBJ, DB_VALUE_DOMAIN_TYPE, xasl_node::dptr_list, er_clear(), er_errid(), ER_FAILED, ER_HEAP_NODATA_NEWADDRESS, ER_HEAP_UNKNOWN_OBJECT, eval_pred(), xasl_node::fetch, fetch_init_val_list(), fetch_proc_node::fetch_res, fetch_val_list(), xasl_node::fptr_list, GOTO_EXIT_ON_ERROR, heap_attrinfo_end(), heap_attrinfo_read_dbvalues(), heap_attrinfo_start(), heap_scancache_end(), heap_scancache_start(), xasl_node::if_pred, IS_LOCK, LK_GRANTED, LK_UNCOND_LOCK, locator_get_lock_mode_from_op_type(), locator_get_object(), lock_subclass(), logtb_get_mvcc_snapshot(), access_spec_node::next, xasl_node::next, NO_ERROR, NULL, NULL_CHN, cls_spec_node::num_attrs_pred, cls_spec_node::num_attrs_rest, OID_EQ, OID_INITIALIZER, OID_ISNULL, partition_prune_spec(), PEEK, xasl_node::proc, qdata_set_value_list_to_null(), qexec_clear_head_lists(), qexec_execute_mainblock(), fetch_proc_node::ql_flag, RECDES_INITIALIZER, access_spec_node::s, S_DOESNT_EXIST, S_SNAPSHOT_NOT_SATISFIED, S_SUCCESS, SAFE_COPY_OID, xasl_node::spec_list, TARGET_CLASS, access_spec_node::type, V_ERROR, V_TRUE, V_UNKNOWN, xasl_node::val_list, xasl_state::vd, access_spec_node::where_pred, XASL_IS_FLAGED, XASL_LINK_TO_REGU_VARIABLE, and XASL_OBJFETCH_IGNORE_CLASSOID.
Referenced by qexec_execute_scan(), qexec_intprt_fnc(), and qexec_merge_fnc().
qfile_list_id* qexec_execute_query | ( | THREAD_ENTRY * | thread_p, |
xasl_node * | xasl, | ||
int | dbval_cnt, | ||
const DB_VALUE * | dbval_ptr, | ||
QUERY_ID | query_id | ||
) |
Definition at line 14660 of file query_executor.c.
References ARG_FILE_LINE, assert, log_tdes::client, log_tdes::client_id, db_datetime_encode(), val_descr::dbval_cnt, val_descr::dbval_ptr, val_descr::drand, envvar_get(), er_clear(), er_errid(), ER_ERROR_SEVERITY, ER_INTERRUPTED, er_print_callstack(), ER_PT_EXECUTE, er_set(), clientids::get_db_user(), qfile_list_id::last_pgptr, xasl_node::list_id, LOG_FIND_TDES(), LOG_FIND_THREAD_TRAN_INDEX, logtb_find_current_isolation(), logtb_get_mvcc_snapshot(), val_descr::lrand, NO_ERROR, NULL, prm_get_bool_value(), PRM_ID_LOG_QUERY_LISTS, qdump_print_xasl(), qexec_clear_xasl(), qexec_execute_mainblock(), qexec_get_xasl_list_id(), qfile_close_list(), QFILE_PUT_NEXT_VPID_NULL, qmgr_get_query_sql_user_text(), qmgr_get_rand_buf(), qmgr_set_query_error(), xasl_state::qp_xasl_line, xasl_state::query_id, xasl_node::query_in_progress, session_clear_trace_stats(), val_descr::sys_datetime, val_descr::sys_epochtime, thread_is_on_trace(), thread_need_clear_trace(), TRAN_REP_READ, tsc_elapsed_time_usec(), tsc_getticks(), qfile_tuple_value_type_list::type_cnt, qfile_list_id::type_list, util_get_second_and_ms_since_epoch(), xasl_state::vd, val_descr::xasl_state, and xlogtb_set_interrupt().
Referenced by qmgr_process_query().
|
static |
Definition at line 7212 of file query_executor.c.
References ACCESS_SPEC_FLAG_FOR_UPDATE, xasl_node::after_join_pred, xasl_node::bptr_list, xasl_node::curr_spec, xasl_node::dptr_list, eval_pred(), xasl_node::fetch, fetch_proc_node::fetch_res, access_spec_node::flags, xasl_node::fptr_list, xasl_node::if_pred, xasl_node::next, xasl_node::next_scan_on, NO_ERROR, NULL, xasl_node::proc, qexec_clear_head_lists(), qexec_execute_mainblock(), qexec_execute_obj_fetch(), S_END, S_ERROR, S_SELECT, S_SUCCESS, S_UPDATE, scan_next_scan(), xasl_node::scan_ptr, scan_reset_scan_block(), V_ERROR, V_TRUE, V_UNKNOWN, xasl_state::vd, XASL_IS_FLAGED, and XASL_LINK_TO_REGU_VARIABLE.
Referenced by qexec_execute_mainblock_internal().
|
static |
Definition at line 12440 of file query_executor.c.
References ARG_FILE_LINE, assert, ASSERT_ERROR_AND_SET, COPY, COPY_OID, db_get_int(), db_get_oid(), er_clear(), er_errid(), ER_FAILED, ER_LK_OBJECT_DL_TIMEOUT_CLASS_MSG, ER_LK_OBJECT_DL_TIMEOUT_CLASSOF_MSG, ER_LK_OBJECT_DL_TIMEOUT_SIMPLE_MSG, ER_LK_OBJECT_TIMEOUT_CLASSOF_MSG, ER_LK_OBJECT_TIMEOUT_SIMPLE_MSG, ER_LK_UNILATERALLY_ABORTED, er_log_debug, ER_MVCC_SERIALIZABLE_CONFLICT, err, fetch_peek_dbval(), cubquery::mvcc_reev_data::filter_result, heap_scancache_end(), heap_scancache_start(), cubquery::upddel_mvcc_cond_reeval::init(), regu_varlist_list_node::list, xasl_node::list_id, locator_lock_and_get_object_with_evaluation(), lock_clear_deadlock_victim(), lock_get_object_lock(), lock_is_instant_lock_mode(), lock_start_instant_lock_mode(), lock_stop_instant_lock_mode(), LOG_CHECK_LOG_APPLIER, log_does_allow_replication(), LOG_FIND_TDES(), LOG_FIND_THREAD_TRAN_INDEX, log_sysop_abort(), log_sysop_attach_to_outer(), log_sysop_commit(), log_sysop_start(), LOG_WARNING_IF_DELETED, logtb_complete_sub_mvcc(), logtb_get_mvcc_snapshot(), logtb_get_new_subtransaction_mvccid(), log_tdes::mvccinfo, selupd_list::next, regu_varlist_list_node::next, NO_ERROR, NULL, NULL_CHN, OID_AS_ARGS, OID_EQ, OID_ISNULL, oid_Root_class_oid, OID_SET_NULL, qexec_execute_increment(), qexec_execute_selupd_list_find_class(), qexec_failure_line(), QEXEC_SEL_UPD_USE_REEVALUATION, qfile_clear_list_id(), qfile_close_list(), qfile_destroy_list(), cubquery::mvcc_scan_reev_data::qualification, S_SUCCESS, xasl_node::selected_upd_list, cubquery::mvcc_scan_reev_data::set_filters(), cubquery::mvcc_reev_data::set_scan_reevaluation(), xasl_node::spec_list, T_DECR, T_INCR, qfile_list_id::tuple_cnt, TYPE_CONSTANT, TYPE_INARITH, TYPE_OUTARITH, V_TRUE, regu_variable_list_node::value, xasl_state::vd, and X_LOCK.
Referenced by qexec_execute_mainblock_internal().
|
static |
Definition at line 12352 of file query_executor.c.
References ARG_FILE_LINE, ASSERT_ERROR, selupd_list::class_hfid, selupd_list::class_oid, hybrid_node::cls_node, cls_spec_node::cls_oid, DB_NOT_PARTITIONED_CLASS, DB_PARTITION_CLASS, er_errid(), ER_ERROR_SEVERITY, ER_INVALID_DATA_FOR_PARTITION, er_set(), heap_get_class_oid(), cls_spec_node::hfid, access_spec_node::next, NO_ERROR, NULL, OID_EQ, oid_Null_oid, access_spec_node::pruning_type, qexec_prune_spec(), access_spec_node::s, S_SUCCESS, xasl_node::scan_op_type, xasl_node::scan_ptr, xasl_node::spec_list, TARGET_CLASS, and access_spec_node::type.
Referenced by qexec_execute_selupd_list().
|
static |
Definition at line 8732 of file query_executor.c.
References xasl_node::aptr_list, ARG_FILE_LINE, assert, update_proc_node::assigns, cubquery::update_mvcc_reev_assignment::att_id, upddel_class_info::att_id, update_assignment::att_idx, del_lob_info::attr_info, bool, BTREE_IS_MULTI_ROW_OP, upddel_class_instances_lock_info::class_oid, upddel_class_info::class_oid, update_proc_node::classes, update_assignment::cls_idx, update_proc_node::cons_pred, update_assignment::constant, COPY_OID, cubquery::mvcc_update_reev_data::copyarea, cubquery::mvcc_update_reev_data::curr_assigns, cubquery::mvcc_update_reev_data::curr_attrinfo, cubquery::mvcc_update_reev_data::curr_extra_assign_cnt, cubquery::mvcc_update_reev_data::curr_extra_assign_reev, xasl_node::curr_spec, cubquery::mvcc_update_reev_data::curr_upddel, db_elo_delete(), db_get_elo(), db_get_int(), db_get_oid(), DB_IS_NULL, DB_NOT_PARTITIONED_CLASS, db_private_free, db_private_free_and_init, DB_TYPE_BLOB, DB_TYPE_CLOB, db_value_is_null(), db_value_type(), er_clear(), ER_ERROR_SEVERITY, ER_FAILED, ER_HEAP_UNKNOWN_OBJECT, er_log_debug, ER_MVCC_NOT_SATISFIED_REEVALUATION, ER_NULL_CONSTRAINT_VIOLATION, er_set(), error(), eval_pred(), GOTO_EXIT_ON_ERROR, upddel_class_info::has_uniques, heap_attrinfo_clear_dbvalues(), heap_attrinfo_end(), heap_attrinfo_read_dbvalues(), heap_attrinfo_set(), heap_attrinfo_start(), heap_get_visible_version(), i, upddel_class_instances_lock_info::instances_locked, internal_classes, LC_FLUSH_DELETE, LC_FLUSH_UPDATE, xasl_node::list_id, locator_attribute_info_force(), locator_free_copy_area(), LOG_RESULT_TOPOP_ABORT, LOG_RESULT_TOPOP_ATTACH_TO_OUTER, logtb_get_mvcc_snapshot(), MULTI_ROW_DELETE, MULTI_ROW_UPDATE, cubquery::mvcc_update_reev_data::mvcc_cond_reev_list, update_proc_node::mvcc_reev_classes, upddel_class_info::needs_pruning, qproc_db_value_list::next, NO_ERROR, update_proc_node::no_logging, NULL, NULL_CHN, update_proc_node::num_assigns, upddel_class_info::num_attrs, update_proc_node::num_classes, update_proc_node::num_reev_classes, upddel_class_info::num_subclasses, OID_EQ, OID_ISNULL, OID_SET_NULL, db_identifier::pageid, PEEK, prepare_mvcc_reev_data(), xasl_node::proc, qexec_change_delete_lob_info(), qexec_clear_internal_classes(), qexec_clear_list_cache_by_class(), qexec_close_scan(), qexec_create_internal_classes(), qexec_end_scan(), qexec_execute_mainblock(), qexec_failure_line(), qexec_free_delete_lob_info_list(), qexec_mvcc_cond_reev_set_scan_order(), qexec_next_scan_block_iterations(), qexec_open_scan(), qexec_process_partition_unique_stats(), qexec_process_unique_stats(), qexec_set_class_locks(), qexec_setup_list_id(), qexec_upddel_mvcc_set_filters(), qexec_upddel_setup_current_class(), QFILE_IS_LIST_CACHE_DISABLED, qmgr_add_modified_class(), xasl_state::query_id, rc, RECDES_INITIALIZER, REPL_INFO_TYPE_RBR_END, REPL_INFO_TYPE_RBR_NORMAL, REPL_INFO_TYPE_RBR_START, S_END, S_ERROR, S_SELECT, S_SUCCESS, scan_next_scan(), xasl_node::scan_op_type, cubquery::mvcc_reev_data::set_update_reevaluation(), SINGLE_ROW_DELETE, SINGLE_ROW_UPDATE, db_identifier::slotid, xasl_node::spec_list, TRAN_ACTIVE, qfile_list_id::tuple_cnt, xasl_node::update, UPDATE_INPLACE_NONE, V_ERROR, V_TRUE, V_UNKNOWN, qproc_db_value_list::val, scan_id_struct::val_list, xasl_node::val_list, val_list_node::valp, xasl_state::vd, db_identifier::volid, xtran_server_end_topop(), and xtran_server_start_topop().
Referenced by qexec_execute_mainblock_internal(), and qexec_execute_merge().
|
static |
Definition at line 1340 of file query_executor.c.
References xasl_state::qp_xasl_line.
Referenced by qexec_create_delete_lob_info(), qexec_execute_build_columns(), qexec_execute_build_indexes(), qexec_execute_cte(), qexec_execute_delete(), qexec_execute_insert(), qexec_execute_mainblock_internal(), qexec_execute_selupd_list(), and qexec_execute_update().
|
static |
Definition at line 3047 of file query_executor.c.
References ARG_FILE_LINE, db_get_int(), DB_TYPE_INTEGER, DB_VALUE_DOMAIN_TYPE, DOMAIN_COMPATIBLE, DOMAIN_OVERFLOW, ER_ERROR_SEVERITY, ER_FAILED, ER_QPROC_INVALID_DATATYPE, ER_QPROC_INVALID_PARAMETER, er_set(), error(), fetch_peek_dbval(), NO_ERROR, NO_SORT_LIMIT, NULL, xasl_node::orderby_limit, prm_get_bool_value(), PRM_ID_USE_ORDERBY_SORT_LIMIT, tp_domain_resolve_default(), tp_domain_status_er_set(), tp_value_coerce(), and xasl_state::vd.
Referenced by qexec_orderby_distinct_by_sorting().
|
static |
Definition at line 21510 of file query_executor.c.
References ACCESS_SPEC_FLAG_FOR_UPDATE, assert, hybrid_node::cls_node, cls_spec_node::cls_oid, er_errid(), ER_FAILED, error(), access_spec_node::flags, IX_LOCK, LK_GRANTED, LK_UNCOND_LOCK, lock_object(), access_spec_node::next, NO_ERROR, NULL, oid_Root_class_oid, access_spec_node::s, xasl_node::scan_ptr, xasl_node::spec_list, TARGET_CLASS, and access_spec_node::type.
Referenced by qexec_execute_mainblock_internal().
|
static |
Definition at line 24984 of file query_executor.c.
References db_private_free, buildlist_proc_node::g_hash_eligible, buildlist_proc_node::g_regu_list, mht_clear(), mht_destroy(), NULL, p, pr_clear_value(), qdata_free_agg_hentry(), qdata_free_agg_hkey(), qdata_free_agg_hvalue(), qfile_clear_sort_key_info(), qfile_close_list(), qfile_close_scan(), qfile_destroy_list(), and qfile_free_list_id().
Referenced by qexec_alloc_agg_hash_context(), qexec_clear_xasl(), and qexec_execute_mainblock_internal().
|
static |
Definition at line 10190 of file query_executor.c.
References del_lob_info::attr_info, db_private_free, heap_attrinfo_end(), del_lob_info::next, and NULL.
Referenced by qexec_execute_delete(), and qexec_execute_update().
|
static |
Definition at line 3664 of file query_executor.c.
References assert, groupby_dimension::d_agg_list, groupby_dimension::d_flag, er_errid(), fetch_val_list(), groupby_state::g_dim, groupby_state::g_dim_levels, groupby_state::g_regu_list, GOTO_EXIT_ON_ERROR, GROUPBY_DIM_FLAG_NONE, i, NO_ERROR, NULL, qdata_evaluate_aggregate_list(), groupby_state::state, xasl_state::vd, and groupby_state::xasl_state.
Referenced by qexec_gby_put_next(), qexec_groupby(), and qexec_groupby_index().
|
static |
Definition at line 17888 of file query_executor.c.
References cubxasl::aggregate_list_node::accumulator, assert, groupby_dimension::d_agg_list, db_private_free, db_private_free_and_init, db_value_free(), groupby_state::g_dim, groupby_state::g_dim_levels, i, cubxasl::aggregate_list_node::list_id, cubxasl::aggregate_list_node::next, NULL, qfile_close_list(), qfile_destroy_list(), cubxasl::aggregate_accumulator::value, and cubxasl::aggregate_accumulator::value2.
Referenced by qexec_clear_groupby_state().
|
static |
Definition at line 17485 of file query_executor.c.
References cubxasl::aggregate_list_node::accumulator, assert, ASSERT_ERROR, ASSERT_ERROR_AND_SET, groupby_state::composite_lock, groupby_dimension::d_agg_list, groupby_dimension::d_flag, db_make_bigint(), DB_PAGESIZE, db_private_alloc, groupby_state::eptr_list, eval_pred(), cubxasl::aggregate_list_node::function, groupby_state::g_dim, groupby_state::g_dim_levels, groupby_state::g_outptr_list, groupby_state::g_output_agg_list, GOTO_EXIT_ON_ERROR, groupby_state::grbynum_flag, groupby_state::grbynum_val, GROUPBY_DIM_FLAG_GROUP_BY, GROUPBY_DIM_FLAG_NONE, groupby_state::having_pred, cubxasl::aggregate_list_node::next, xasl_node::next, NO_ERROR, NULL, groupby_state::output_file, groupby_state::output_tplrec, pr_clear_value(), PRIM_SET_NULL(), PT_GROUPBY_NUM, qdata_copy_valptr_list_to_tuple(), qdata_finalize_aggregate_list(), qexec_add_composite_lock(), QEXEC_CLEAR_AGG_LIST_VALUE, qexec_eval_grbynum_pred(), qexec_execute_mainblock(), qexec_gby_finalize_group_val_list(), qexec_generate_tuple_descriptor(), qfile_add_tuple_to_list(), qfile_generate_tuple_into_list(), QPROC_TPLDESCR_FAILURE, QPROC_TPLDESCR_RETRY_BIG_REC, QPROC_TPLDESCR_RETRY_SET_TYPE, QPROC_TPLDESCR_SUCCESS, qfile_tuple_record::size, SORT_PUT_STOP, groupby_state::state, T_NORMAL, qfile_tuple_record::tpl, groupby_state::upd_del_class_cnt, V_ERROR, V_TRUE, valptr_list_node::valptrp, cubxasl::aggregate_accumulator::value, xasl_state::vd, groupby_state::xasl, XASL_G_GRBYNUM_FLAG_LIMIT_GT_LT, XASL_G_GRBYNUM_FLAG_LIMIT_LT, XASL_G_GRBYNUM_FLAG_SCAN_STOP, and groupby_state::xasl_state.
Referenced by qexec_gby_finalize_group_dim().
|
static |
Definition at line 17393 of file query_executor.c.
References assert, groupby_state::cmp_fn, groupby_state::current_key, groupby_dimension::d_agg_list, groupby_dimension::d_flag, recdes::data, groupby_state::g_dim, groupby_state::g_dim_levels, GROUPBY_DIM_FLAG_ROLLUP, i, groupby_state::key_info, cubxasl::aggregate_list_node::list_id, SORTKEY_INFO::nkeys, NULL, qexec_gby_finalize_group(), qexec_gby_start_group(), qfile_close_list(), qfile_destroy_list(), SORT_PUT_STOP, groupby_state::state, and groupby_state::with_rollup.
Referenced by qexec_gby_put_next(), qexec_groupby(), and qexec_groupby_index().
|
static |
Definition at line 17342 of file query_executor.c.
References assert, groupby_dimension::d_flag, db_make_null(), groupby_state::g_dim, groupby_state::g_dim_levels, groupby_state::g_val_list, GROUPBY_DIM_FLAG_GROUP_BY, GROUPBY_DIM_FLAG_ROLLUP, i, qproc_db_value_list::next, NO_ERROR, NULL, pr_clear_value(), groupby_state::state, qproc_db_value_list::val, and val_list_node::valp.
Referenced by qexec_gby_finalize_group().
|
static |
Definition at line 4079 of file query_executor.c.
References groupby_state::input_scan, groupby_state::input_tpl, groupby_state::key_info, and qfile_make_sort_key().
Referenced by qexec_groupby().
|
static |
Definition at line 17802 of file query_executor.c.
References cubxasl::aggregate_list_node::accumulator, assert, groupby_dimension::d_agg_list, groupby_dimension::d_flag, db_private_alloc, db_value_copy(), ER_FAILED, groupby_state::g_dim, groupby_state::g_dim_levels, groupby_state::g_output_agg_list, GROUPBY_DIM_FLAG_CUBE, GROUPBY_DIM_FLAG_GROUP_BY, GROUPBY_DIM_FLAG_NONE, GROUPBY_DIM_FLAG_ROLLUP, i, groupby_state::key_info, cubxasl::aggregate_list_node::next, SORTKEY_INFO::nkeys, NO_ERROR, NULL, cubxasl::aggregate_accumulator::value, cubxasl::aggregate_accumulator::value2, and groupby_state::with_rollup.
Referenced by qexec_initialize_groupby_state().
|
static |
Definition at line 4095 of file query_executor.c.
References cubxasl::aggregate_list_node::accumulator, cubquery::aggregate_hash_value::accumulators, groupby_state::agg_hash_context, recdes::area_size, assert, groupby_state::cmp_fn, COPY, cubquery::aggregate_hash_context::curr_part_value, groupby_state::current_key, groupby_dimension::d_agg_list, recdes::data, cubxasl::aggregate_list_node::domain, er_errid(), cubxasl::aggregate_list_node::function, groupby_state::g_dim, groupby_state::g_dim_levels, groupby_state::g_hk_regu_list, groupby_state::gby_rec, groupby_state::hash_eligible, i, groupby_state::input_recs, groupby_state::input_scan, groupby_state::key_info, qfile_list_scan_id::list_id, SORT_REC::next, cubxasl::aggregate_list_node::next, NO_ERROR, NULL, NULL_PAGEID, SORT_REC::original, vpid::pageid, cubquery::aggregate_hash_context::part_scan_code, PEEK, qdata_aggregate_accumulator_to_accumulator(), qdata_load_agg_hvalue_in_agg_list(), qexec_build_agg_hkey(), qexec_gby_agg_tuple(), qexec_gby_finalize_group_dim(), qexec_gby_start_group_dim(), qexec_locate_agg_hentry_in_list(), qfile_generate_sort_tuple(), QFILE_GET_OVERFLOW_VPID, qfile_get_tuple(), qmgr_free_old_page_and_init, qmgr_get_old_page(), SORT_REC::s, S_SUCCESS, qfile_tuple_record::size, SORT_PUT_STOP, groupby_state::state, cubquery::aggregate_hash_context::temp_key, qfile_list_id::tfile_vfid, qfile_tuple_record::tpl, cubquery::aggregate_hash_value::tuple_count, SORTKEY_INFO::use_original, vpid::volid, VPID_EQ, groupby_state::with_rollup, and groupby_state::xasl_state.
Referenced by qexec_groupby().
|
static |
Definition at line 17731 of file query_executor.c.
References recdes::area_size, assert, groupby_state::current_key, groupby_dimension::d_agg_list, groupby_dimension::d_flag, recdes::data, db_private_realloc, er_errid(), error(), groupby_state::g_dim, groupby_state::g_dim_levels, GOTO_EXIT_ON_ERROR, GROUPBY_DIM_FLAG_NONE, recdes::length, NO_ERROR, NULL, qdata_initialize_aggregate_list(), QEXEC_CLEAR_AGG_LIST_VALUE, xasl_state::query_id, groupby_state::state, and groupby_state::xasl_state.
Referenced by qexec_gby_finalize_group_dim(), and qexec_gby_start_group_dim().
|
static |
Definition at line 17709 of file query_executor.c.
References groupby_state::g_dim_levels, i, NULL, and qexec_gby_start_group().
Referenced by qexec_gby_put_next(), qexec_groupby(), and qexec_groupby_index().
|
static |
Definition at line 911 of file query_executor.c.
References ARG_FILE_LINE, bool, qfile_tuple_descriptor::clear_f_val_at_clone_decache, DB_SIZEOF, ER_ERROR_SEVERITY, ER_OUT_OF_VIRTUAL_MEMORY, er_set(), qfile_tuple_descriptor::f_valp, i, qfile_list_id::is_domain_resolved, NO_ERROR, NULL, qdata_generate_tuple_desc_for_valptr_list(), qfile_update_domains_on_type_list(), QPROC_TPLDESCR_FAILURE, qfile_list_id::tpl_descr, qfile_tuple_value_type_list::type_cnt, and qfile_list_id::type_list.
Referenced by qexec_end_buildvalueblock_iterations(), qexec_end_one_iteration(), qexec_gby_finalize_group(), and qexec_insert_tuple_into_list().
|
static |
Definition at line 10837 of file query_executor.c.
References assert, or_attribute::current_default_value, pr_type::data_readval(), db_make_null(), or_attribute::domain, or_buf::env, ER_FAILED, or_buf::error_abort, NO_ERROR, NULL, or_init(), pr_is_set_type(), pr_type_from_id(), or_attribute::type, or_default_value::val_length, and or_default_value::value.
Referenced by qexec_execute_build_columns(), and qexec_execute_insert().
|
static |
Definition at line 16775 of file query_executor.c.
References CONNECTBY_TUPLE_INDEX_STRING_MEM, db_private_alloc, db_private_free_and_init, db_value_is_null(), ER_FAILED, ER_OUT_OF_VIRTUAL_MEMORY, NO_ERROR, NULL, xasl_node::outptr_list, PCOL_INDEX_STRING_TUPLE_OFFSET, qexec_get_tuple_column_value(), strlen, tp_String_domain, and valptr_list_node::valptr_cnt.
Referenced by qexec_execute_connect_by().
|
static |
Definition at line 24431 of file query_executor.c.
References assert_release, B_AND, cubxasl::pred::bool_op, cleanup(), cmp, DB_GT, DB_IS_NULL, db_make_int(), db_make_null(), db_value::domain, error(), cubxasl::eval_term::et, cubxasl::eval_term::et_comp, fetch_peek_dbval(), cubxasl::pred::lhs, cubxasl::comp_eval_term::lhs, cubxasl::pred_expr::m_eval_term, cubxasl::pred_expr::m_pred, NO_ERROR, NULL, cubxasl::pred_expr::pe, pr_clear_value(), pr_clone_value(), qdata_subtract_dbval(), R_GE, R_GT, R_LE, R_LT, cubxasl::comp_eval_term::rel_op, cubxasl::pred::rhs, cubxasl::comp_eval_term::rhs, T_EVAL_TERM, T_PRED, tp_value_compare(), cubxasl::pred_expr::type, TYPE_CONSTANT, TYPE_DBVAL, and TYPE_POS_VALUE.
Referenced by qexec_setup_topn_proc().
int qexec_get_tuple_column_value | ( | QFILE_TUPLE | tpl, |
int | index, | ||
DB_VALUE * | valp, | ||
tp_domain * | domain | ||
) |
Definition at line 16247 of file query_executor.c.
References pr_type::data_readval(), db_make_null(), ER_FAILED, NO_ERROR, NULL, OR_BUF_INIT, qfile_locate_tuple_value(), tp_domain::type, and V_BOUND.
Referenced by qdata_evaluate_connect_by_root(), qdata_evaluate_qprior(), qdata_evaluate_sys_connect_by_path(), qexec_check_for_cycle(), qexec_execute_connect_by(), qexec_get_index_pseudocolumn_value_from_tuple(), qexec_groupby_index(), and qexec_recalc_tuples_parent_pos_in_list().
qfile_list_id* qexec_get_xasl_list_id | ( | xasl_node * | xasl | ) |
Definition at line 2743 of file query_executor.c.
References i, xasl_node::list_id, qproc_db_value_list::next, NO_ERROR, NULL, pr_clear_value(), QFILE_CLEAR_LIST_ID, qfile_clear_list_id(), qfile_copy_list_id(), QFILE_FREE_AND_INIT_LIST_ID, xasl_node::single_tuple, qproc_db_value_list::val, and val_list_node::valp.
Referenced by qexec_execute_query().
|
static |
Definition at line 4386 of file query_executor.c.
References cubquery::aggregate_hash_context::accumulator_domains, mht_table::act_head, hentry::act_next, buildlist_proc_node::after_groupby_list, groupby_state::agg_hash_context, ARG_FILE_LINE, assert, xasl_node::buildlist, groupby_state::cmp_fn, groupby_state::composite_lock, cubquery::aggregate_hash_context::curr_part_key, cubquery::aggregate_hash_context::curr_part_value, groupby_dimension::d_agg_list, hentry::data, DB_IS_NULL, db_make_bigint(), db_private_free_and_init, qfile_tuple_value_type_list::domp, buildlist_proc_node::eptr_list, er_errid(), ER_ERROR_SEVERITY, ER_FAILED, ER_MERGE_TOO_MANY_SOURCE_ROWS, er_set(), cubquery::aggregate_hash_value::first_tuple, buildlist_proc_node::g_agg_list, groupby_state::g_dim, buildlist_proc_node::g_grbynum_flag, buildlist_proc_node::g_grbynum_pred, buildlist_proc_node::g_grbynum_val, buildlist_proc_node::g_hash_eligible, buildlist_proc_node::g_having_pred, buildlist_proc_node::g_hk_sort_regu_list, buildlist_proc_node::g_outptr_list, buildlist_proc_node::g_regu_list, buildlist_proc_node::g_val_list, buildlist_proc_node::g_with_rollup, GOTO_EXIT_ON_ERROR, buildlist_proc_node::groupby_list, groupby_state::hash_eligible, cubquery::aggregate_hash_context::hash_table, if(), groupby_state::input_recs, groupby_state::input_scan, cubquery::aggregate_hash_context::key_domains, groupby_state::key_info, qfile_list_scan_id::list_id, xasl_node::list_id, mht_count(), SORTKEY_INFO::nkeys, NO_ERROR, NO_SORT_LIMIT, NULL, NULL_VOLID, xasl_node::option, xasl_node::orderby_list, xasl_node::outptr_list, groupby_state::output_file, cubquery::aggregate_hash_context::part_list_id, cubquery::aggregate_hash_context::part_scan_code, cubquery::aggregate_hash_context::part_scan_id, PEEK, prm_get_bool_value(), PRM_ID_AGG_HASH_RESPECT_ORDER, xasl_node::proc, PSTAT_SORT_NUM_DATA_PAGES, PSTAT_SORT_NUM_IO_PAGES, Q_DISTINCT, qdata_get_valptr_type_list(), qdata_load_agg_hentry_from_list(), qdata_load_agg_hvalue_in_agg_list(), qdata_save_agg_hentry_to_list(), qdata_save_agg_htable_to_list(), qexec_clear_groupby_state(), qexec_gby_agg_tuple(), qexec_gby_finalize_group_dim(), qexec_gby_get_next(), qexec_gby_put_next(), qexec_gby_start_group_dim(), qexec_hash_gby_get_next(), qexec_hash_gby_put_next(), qexec_initialize_groupby_state(), qexec_resolve_domains_for_group_by(), qfile_close_list(), qfile_close_scan(), qfile_compare_all_sort_record(), qfile_compare_partial_sort_record(), qfile_copy_list_id(), qfile_destroy_list(), QFILE_FLAG_ALL, QFILE_FLAG_RESULT_FILE, qfile_free_list_id(), qfile_get_estimated_pages_for_sorting(), qfile_open_list(), qfile_open_list_scan(), qfile_reopen_list_as_append_mode(), QFILE_SET_FLAG, qmgr_free_old_page_and_init, xasl_state::query_id, S_END, SORT_DUP, cubquery::aggregate_hash_context::sort_key, sort_listfile(), SORT_PUT_STOP, cubquery::aggregate_hash_context::sorted_count, cubquery::aggregate_hash_context::sorted_part_list_id, groupby_state::state, qmgr_temp_file::tde_encrypted, cubquery::aggregate_hash_context::temp_dbval_array, qfile_list_id::tfile_vfid, thread_is_on_trace(), qfile_tuple_record::tpl, TSC_ADD_TIMEVAL, tsc_elapsed_time_usec(), tsc_getticks(), qfile_list_id::tuple_cnt, cubquery::aggregate_hash_value::tuple_count, cubquery::aggregate_hash_context::tuple_count, qfile_tuple_value_type_list::type_cnt, qfile_list_id::type_list, groupby_state::upd_del_class_cnt, xasl_node::upd_del_class_cnt, SORTKEY_INFO::use_original, XASL_G_GRBYNUM_FLAG_LIMIT_GT_LT, XASL_G_GRBYNUM_FLAG_LIMIT_LT, XASL_IS_FLAGED, XASL_IS_MERGE_QUERY, XASL_MULTI_UPDATE_AGG, XASL_SKIP_ORDERBY_LIST, XASL_TO_BE_CACHED, and XASL_TOP_MOST_XASL.
Referenced by qexec_execute_mainblock_internal().
|
static |
Definition at line 18809 of file query_executor.c.
References buildlist_proc_node::after_groupby_list, ARG_FILE_LINE, assert, assert_release, xasl_node::buildlist, COPY, DB_EQ, DB_GT, DB_LT, db_make_null(), DB_NEED_CLEAR, db_private_alloc, db_private_free, db_private_free_and_init, qfile_tuple_value_type_list::domp, buildlist_proc_node::eptr_list, ER_ERROR_SEVERITY, ER_FAILED, ER_MERGE_TOO_MANY_SOURCE_ROWS, er_set(), buildlist_proc_node::g_agg_list, groupby_state::g_dim_levels, buildlist_proc_node::g_grbynum_flag, buildlist_proc_node::g_grbynum_pred, buildlist_proc_node::g_grbynum_val, buildlist_proc_node::g_having_pred, buildlist_proc_node::g_outptr_list, buildlist_proc_node::g_regu_list, buildlist_proc_node::g_val_list, buildlist_proc_node::g_with_rollup, GOTO_EXIT_ON_ERROR, buildlist_proc_node::groupby_list, HS_NONE, i, groupby_state::input_recs, groupby_state::input_scan, xasl_node::list_id, regu_variable_list_node::next, sort_list::next, NO_ERROR, NULL, xasl_node::outptr_list, groupby_state::output_file, PEEK, pr_clear_value(), pr_clone_value(), xasl_node::proc, qdata_get_valptr_type_list(), qexec_clear_groupby_state(), qexec_gby_agg_tuple(), qexec_gby_finalize_group_dim(), qexec_gby_start_group_dim(), qexec_get_tuple_column_value(), qexec_initialize_groupby_state(), qfile_close_list(), qfile_close_scan(), qfile_copy_list_id(), qfile_destroy_list(), QFILE_FLAG_ALL, qfile_open_list(), qfile_open_list_scan(), qfile_scan_list_next(), QFILE_SET_FLAG, xasl_state::query_id, S_SUCCESS, SORT_PUT_STOP, groupby_state::state, thread_is_on_trace(), tp_value_compare(), qfile_tuple_record::tpl, TSC_ADD_TIMEVAL, tsc_elapsed_time_usec(), tsc_getticks(), qfile_list_id::tuple_cnt, qfile_list_id::type_list, valptr_list_node::valptrp, regu_variable_list_node::value, groupby_state::with_rollup, XASL_IS_FLAGED, and XASL_IS_MERGE_QUERY.
Referenced by qexec_execute_mainblock_internal().
|
static |
Definition at line 3713 of file query_executor.c.
References cubquery::aggregate_hash_value::accumulators, ARG_FILE_LINE, assert, hentry::data, db_private_alloc, er_errid(), ER_ERROR_SEVERITY, ER_FAILED, er_log_debug, ER_OUT_OF_VIRTUAL_MEMORY, er_set(), fetch_val_list(), cubquery::aggregate_hash_value::first_tuple, buildlist_proc_node::g_agg_list, buildlist_proc_node::g_func_count, buildlist_proc_node::g_hk_scan_regu_list, buildlist_proc_node::g_output_first_tuple, buildlist_proc_node::g_scan_regu_list, cubquery::aggregate_hash_context::group_count, HASH_AGGREGATE_VH_SELECTIVITY_THRESHOLD, HASH_AGGREGATE_VH_SELECTIVITY_TUPLE_THRESHOLD, cubquery::aggregate_hash_context::hash_size, cubquery::aggregate_hash_context::hash_table, HS_REJECT_ALL, if(), hentry::key, mht_table::lru_head, mht_get(), mht_put(), mht_rem(), NO_ERROR, NULL, cubquery::aggregate_hash_context::part_list_id, prm_get_bigint_value(), PRM_ID_MAX_AGG_HASH_SIZE, qdata_alloc_agg_hvalue(), qdata_copy_agg_hkey(), qdata_evaluate_aggregate_list(), qdata_free_agg_hentry(), qdata_free_agg_hkey(), qdata_free_agg_hvalue(), qdata_get_agg_hkey_size(), qdata_get_agg_hvalue_size(), qdata_save_agg_hentry_to_list(), qdata_save_agg_htable_to_list(), qexec_build_agg_hkey(), qfile_add_tuple_to_list(), qfile_save_tuple(), rc, qfile_tuple_record::size, cubquery::aggregate_hash_context::state, T_NORMAL, cubquery::aggregate_hash_context::temp_dbval_array, cubquery::aggregate_hash_context::temp_key, thread_is_on_trace(), qfile_tuple_record::tpl, qfile_tuple_descriptor::tpl_size, TSC_ADD_TIMEVAL, tsc_elapsed_time_usec(), tsc_getticks(), cubquery::aggregate_hash_value::tuple_count, cubquery::aggregate_hash_context::tuple_count, and xasl_state::vd.
Referenced by qexec_end_one_iteration().
|
static |
Definition at line 3915 of file query_executor.c.
References groupby_state::agg_hash_context, cubquery::aggregate_hash_context::input_tuple, cubquery::aggregate_hash_context::part_scan_id, qfile_make_sort_key(), and cubquery::aggregate_hash_context::sort_key.
Referenced by qexec_groupby().
|
static |
Definition at line 3930 of file query_executor.c.
References cubquery::aggregate_hash_context::accumulator_domains, cubquery::aggregate_hash_value::accumulators, groupby_state::agg_hash_context, recdes::area_size, COPY, cubquery::aggregate_hash_context::curr_part_key, cubquery::aggregate_hash_context::curr_part_value, recdes::data, cubxasl::aggregate_list_node::domain, ER_FAILED, cubxasl::aggregate_list_node::function, groupby_state::g_output_agg_list, i, cubquery::aggregate_hash_context::key_domains, SORT_REC::next, cubxasl::aggregate_list_node::next, NO_ERROR, NULL, NULL_PAGEID, SORT_REC::original, vpid::pageid, cubquery::aggregate_hash_context::part_list_id, PEEK, qdata_agg_hkey_eq(), qdata_aggregate_accumulator_to_accumulator(), qdata_load_agg_hentry_from_tuple(), qdata_save_agg_hentry_to_list(), qfile_generate_sort_tuple(), QFILE_GET_OVERFLOW_VPID, qfile_get_tuple(), qmgr_free_old_page_and_init, qmgr_get_old_page(), rc, SORT_REC::s, qfile_tuple_record::size, cubquery::aggregate_hash_context::sort_key, cubquery::aggregate_hash_context::sorted_count, cubquery::aggregate_hash_context::sorted_part_list_id, cubquery::aggregate_hash_context::temp_dbval_array, cubquery::aggregate_hash_context::temp_part_key, cubquery::aggregate_hash_context::temp_part_value, qfile_list_id::tfile_vfid, qfile_tuple_record::tpl, cubquery::aggregate_hash_context::tuple_recdes, SORTKEY_INFO::use_original, and vpid::volid.
Referenced by qexec_groupby().
|
static |
Definition at line 23545 of file query_executor.c.
References ACCESS_SPEC_CLS_OID, ARG_FILE_LINE, cubxasl::aggregate_list_node::btid, cubquery::hierarchy_aggregate_helper::btids, db_private_alloc, db_private_free, ER_ERROR_SEVERITY, ER_OUT_OF_VIRTUAL_MEMORY, er_set(), error(), cubxasl::aggregate_list_node::flag_agg_optimize, cubquery::hierarchy_aggregate_helper::hfids, i, cubxasl::aggregate_list_node::next, NO_ERROR, NULL, partition_clear_pruning_context(), partition_init_pruning_context(), partition_load_aggregate_helper(), partition_load_pruning_context(), and access_spec_node::pruning_type.
Referenced by qexec_evaluate_partition_aggregates().
|
static |
Definition at line 16463 of file query_executor.c.
References CONNECTBY_TUPLE_INDEX_STRING_MEM, db_private_alloc, ER_OUT_OF_VIRTUAL_MEMORY, NO_ERROR, and NULL.
Referenced by qexec_execute_connect_by().
|
static |
Definition at line 12831 of file query_executor.c.
References access_spec_node::access, ACCESS_METHOD_INDEX, ARG_FILE_LINE, assert, assert_release, db_make_bigint(), DB_TYPE_BIGINT, DB_VALUE_DOMAIN_TYPE, DOMAIN_COMPATIBLE, ER_ERROR_SEVERITY, ER_FAILED, ER_QPROC_INVALID_DATATYPE, er_set(), error(), fetch_peek_dbval(), access_spec_node::indexptr, xasl_node::instnum_flag, xasl_node::instnum_val, indx_info::key_info, key_info::key_limit_l, access_spec_node::next, NO_ERROR, NULL, pr_clone_value(), xasl_node::save_instnum_val, xasl_node::scan_ptr, xasl_node::spec_list, tp_domain_resolve_default(), tp_domain_status_er_set(), tp_value_coerce(), xasl_state::vd, XASL_INSTNUM_FLAG_SCAN_CHECK, XASL_INSTNUM_FLAG_SCAN_LAST_STOP, and XASL_INSTNUM_FLAG_SCAN_STOP.
Referenced by qexec_start_mainblock_iterations().
|
static |
Definition at line 7570 of file query_executor.c.
References access_spec_node::access, ACCESS_METHOD_INDEX, ACCESS_METHOD_SEQUENTIAL, ACCESS_METHOD_SEQUENTIAL_PAGE_SCAN, ACCESS_METHOD_SEQUENTIAL_RECORD_INFO, ACCESS_SPEC_CLS_OID, ACCESS_SPEC_HFID, scan_attrs::attr_cache, cls_spec_node::attrids_key, cls_spec_node::attrids_pred, cls_spec_node::attrids_range, cls_spec_node::attrids_rest, indx_info::btid, access_spec_node::btid, cls_spec_node::cache_key, heap_page_scan_id::cache_page_info, cls_spec_node::cache_pred, cls_spec_node::cache_range, heap_scan_id::cache_recordinfo, cls_spec_node::cache_reserved, cls_spec_node::cache_rest, heap_scan_id::caches_inited, indx_scan_id::caches_inited, hybrid_node::cls_node, cls_spec_node::cls_output_val_list, cls_spec_node::cls_regu_list_key, cls_spec_node::cls_regu_list_pred, cls_spec_node::cls_regu_list_range, cls_spec_node::cls_regu_list_reserved, cls_spec_node::cls_regu_list_rest, cls_spec_node::cls_regu_val_list, COPY_OID, error(), heap_attrinfo_end(), HEAP_PAGE_INFO_COUNT, HEAP_RECORD_INFO_COUNT, HFID_COPY, i, access_spec_node::indexptr, IS_ANY_INDEX_ACCESS, indx_scan_id::key_attrs, indx_scan_id::key_pred, access_spec_node::next, NO_ERROR, NULL, cls_spec_node::num_attrs_key, cls_spec_node::num_attrs_pred, cls_spec_node::num_attrs_range, cls_spec_node::num_attrs_rest, pr_clear_value(), heap_scan_id::pred_attrs, indx_scan_id::pred_attrs, scan_pred::pred_expr, qexec_reset_pred_expr(), qexec_reset_regu_variable_list(), xasl_state::query_id, indx_scan_id::range_attrs, indx_scan_id::range_pred, scan_pred::regu_list, heap_scan_id::rest_attrs, indx_scan_id::rest_attrs, access_spec_node::s, access_spec_node::s_dbval, S_END, S_ERROR, S_HEAP_PAGE_SCAN, S_HEAP_SCAN, S_HEAP_SCAN_RECORD_INFO, S_SUCCESS, scan_close_scan(), scan_end_scan(), scan_open_class_attr_scan(), scan_open_heap_page_scan(), scan_open_heap_scan(), scan_open_index_scan(), scan_start_scan(), heap_scan_id::scancache_inited, access_spec_node::single_fetch, TARGET_CLASS, TARGET_CLASS_ATTR, access_spec_node::type, xasl_state::vd, access_spec_node::where_key, access_spec_node::where_pred, and access_spec_node::where_range.
Referenced by qexec_next_scan_block().
|
static |
Definition at line 8437 of file query_executor.c.
References xasl_node::buildlist, BUILDLIST_PROC, db_private_alloc, db_private_free, DB_TYPE_OBJECT, ER_FAILED, LOG_DBFIRST_VOLID, NO_ERROR, NULL, xasl_node::proc, xasl_node::type, xasl_node::upd_del_class_cnt, ehid::vfid, vfid::volid, xehash_create(), and xehash_destroy().
Referenced by qexec_start_mainblock_iterations().
|
static |
Definition at line 19509 of file query_executor.c.
References recdes::area_size, ARG_FILE_LINE, assert, analytic_function_state::cgtc_dbval, analytic_function_state::cgtc_nn_dbval, qfile_tuple_descriptor::clear_f_val_at_clone_decache, analytic_function_state::csktc_dbval, analytic_function_state::curr_group_tuple_count, analytic_function_state::curr_group_tuple_count_nn, analytic_function_state::curr_sort_key_tuple_count, analytic_function_state::current_key, recdes::data, db_make_null(), DB_PAGESIZE, db_private_alloc, db_private_free_and_init, cubxasl::analytic_list_node::domain, qfile_tuple_value_type_list::domp, ER_ERROR_SEVERITY, ER_FAILED, ER_OUT_OF_VIRTUAL_MEMORY, er_set(), qfile_tuple_descriptor::f_cnt, qfile_tuple_descriptor::f_valp, analytic_function_state::func_p, analytic_function_state::group_list_id, analytic_function_state::group_tplrec, recdes::length, NO_ERROR, NULL, qfile_open_list(), xasl_state::query_id, qfile_tuple_record::size, tp_Integer_domain, qfile_tuple_record::tpl, qfile_list_id::tpl_descr, recdes::type, qfile_tuple_value_type_list::type_cnt, cubxasl::analytic_list_node::value, analytic_function_state::value_list_id, and analytic_function_state::value_tplrec.
Referenced by qexec_initialize_analytic_state().
|
static |
Definition at line 19631 of file query_executor.c.
References analytic_state::a_outptr_list, analytic_state::a_outptr_list_interm, analytic_state::a_regu_list, analytic_state::analytic_rec, recdes::area_size, assert, SUBKEY_INFO::col_dom, analytic_state::curr_sort_page, recdes::data, db_private_alloc, DB_TYPE_VARIABLE, qfile_tuple_value_type_list::domp, SORTKEY_INFO::error, analytic_state::func_count, analytic_state::func_state_list, i, analytic_state::input_recs, analytic_state::input_scan, analytic_state::input_tplrec, analytic_state::interm_file, analytic_state::interm_scan, analytic_state::is_last_run, SORTKEY_INFO::key, analytic_state::key_info, recdes::length, cubxasl::analytic_list_node::next, regu_variable_list_node::next, SORTKEY_INFO::nkeys, NO_ERROR, NULL, NULL_PAGEID, NULL_VOLID, analytic_state::output_file, analytic_state::output_tplrec, analytic_state::page_p, vpid::pageid, qexec_initialize_analytic_function_state(), qfile_initialize_sort_key_info(), QPROC_IS_INTERPOLATION_FUNC, qfile_tuple_record::size, analytic_state::state, TP_DOMAIN_COLL_NORMAL, TP_DOMAIN_COLLATION_FLAG, TP_DOMAIN_TYPE, TP_IS_STRING_TYPE, qfile_tuple_record::tpl, recdes::type, TYPE_POSITION, SUBKEY_INFO::use_cmp_dom, SORTKEY_INFO::use_original, regu_variable_list_node::value, vpid::volid, analytic_state::vpid, analytic_state::xasl, and analytic_state::xasl_state.
Referenced by qexec_execute_analytic().
|
static |
Definition at line 3475 of file query_executor.c.
References groupby_state::agg_hash_context, recdes::area_size, assert, xasl_node::buildlist, BUILDLIST_PROC, groupby_state::composite_lock, groupby_state::current_key, recdes::data, DB_PAGESIZE, db_private_alloc, qfile_tuple_value_position::dom, qfile_tuple_value_type_list::domp, groupby_state::eptr_list, ER_FAILED, groupby_state::g_hk_regu_list, buildlist_proc_node::g_hkey_size, groupby_state::g_outptr_list, groupby_state::g_output_agg_list, groupby_state::g_regu_list, groupby_state::g_val_list, groupby_state::gby_rec, groupby_state::grbynum_flag, groupby_state::grbynum_pred, groupby_state::grbynum_val, groupby_state::hash_eligible, groupby_state::having_pred, i, groupby_state::input_recs, groupby_state::input_scan, groupby_state::input_tpl, groupby_state::key_info, recdes::length, sort_list::next, NO_ERROR, NULL, groupby_state::output_file, groupby_state::output_tplrec, cubquery::aggregate_hash_context::part_list_id, sort_list::pos_descr, qfile_tuple_value_position::pos_no, xasl_node::proc, qexec_gby_init_group_dim(), qfile_allocate_sort_list(), qfile_free_sort_list(), qfile_initialize_sort_key_info(), sort_list::s_nulls, sort_list::s_order, qfile_tuple_record::size, cubquery::aggregate_hash_context::sort_key, groupby_state::state, qfile_tuple_record::tpl, recdes::type, xasl_node::type, qfile_list_id::type_list, groupby_state::upd_del_class_cnt, VPID_SET_NULL, groupby_state::with_rollup, groupby_state::xasl, and groupby_state::xasl_state.
Referenced by qexec_groupby(), and qexec_groupby_index().
int qexec_insert_tuple_into_list | ( | THREAD_ENTRY * | thread_p, |
qfile_list_id * | list_id, | ||
valptr_list_node * | outptr_list, | ||
val_descr * | vd, | ||
qfile_tuple_record * | tplrec | ||
) |
Definition at line 16189 of file query_executor.c.
References DB_PAGESIZE, db_private_alloc, ER_FAILED, NO_ERROR, NULL, qdata_copy_valptr_list_to_tuple(), qexec_generate_tuple_descriptor(), qfile_add_tuple_to_list(), qfile_generate_tuple_into_list(), QPROC_TPLDESCR_FAILURE, QPROC_TPLDESCR_RETRY_BIG_REC, QPROC_TPLDESCR_RETRY_SET_TYPE, QPROC_TPLDESCR_SUCCESS, qfile_tuple_record::size, T_NORMAL, and qfile_tuple_record::tpl.
Referenced by btree_dump_curr_key(), qexec_analytic_add_tuple(), qexec_analytic_update_group_result(), qexec_execute_connect_by(), and qexec_update_connect_by_lists().
|
static |
Definition at line 7780 of file query_executor.c.
References access_spec_node::access, ACCESS_METHOD_INDEX, ACCESS_SPEC_FLAG_FOR_UPDATE, cubxasl::aggregate_list_node::accumulator, xasl_node::after_join_pred, buildvalue_proc_node::agg_list, ARG_FILE_LINE, assert, xasl_node::bptr_list, xasl_node::buildlist, BUILDLIST_PROC, xasl_node::buildvalue, BUILDVALUE_PROC, hybrid_node::cls_node, cls_spec_node::cls_regu_list_pred, xasl_node::connect_by_ptr, CTE_CURR_ITERATION_LAST_TUPLE, CTE_CURRENT_SCAN_READ_TUPLE, cubxasl::aggregate_accumulator::curr_cnt, xasl_node::curr_spec, xasl_node::dptr_list, ER_CTE_MAX_RECURSION_REACHED, ER_ERROR_SEVERITY, er_set(), error(), eval_pred(), xasl_node::fetch, fetch_proc_node::fetch_res, cubxasl::aggregate_list_node::flag_agg_optimize, access_spec_node::flags, xasl_node::fptr_list, cubxasl::aggregate_list_node::function, buildlist_proc_node::g_agg_list, xasl_node::if_pred, access_spec_node::indexptr, xasl_node::instnum_flag, xasl_node::instnum_pred, xasl_node::instnum_val, buildvalue_proc_node::is_always_false, xasl_node::max_iterations, cubxasl::aggregate_list_node::next, access_spec_node::next, xasl_node::next, xasl_node::next_scan_on, NO_ERROR, NULL, prm_get_bool_value(), PRM_ID_OPTIMIZER_ENABLE_AGGREGATE_OPTIMIZATION, xasl_node::proc, PT_COUNT_STAR, qexec_clear_all_lists(), qexec_clear_head_lists(), qexec_end_one_iteration(), qexec_eval_instnum_pred(), qexec_evaluate_aggregates_optimize(), qexec_execute_mainblock(), qexec_execute_obj_fetch(), qexec_next_scan_block_iterations(), qexec_update_connect_by_lists(), access_spec_node::s, S_END, S_ERROR, S_LIST_SCAN, S_SELECT, S_SUCCESS, S_UPDATE, SCAN_IS_INDEX_COVERED, SCAN_IS_INDEX_MRO, scan_next_scan(), xasl_node::scan_ptr, scan_reset_scan_block(), xasl_node::spec_list, TARGET_LIST, access_spec_node::type, xasl_node::type, indx_info::use_iss, V_ERROR, V_TRUE, V_UNKNOWN, xasl_state::vd, access_spec_node::where_pred, XASL_HAS_CONNECT_BY, XASL_INSTNUM_FLAG_SCAN_LAST_STOP, XASL_INSTNUM_FLAG_SCAN_STOP, XASL_IS_FLAGED, XASL_LINK_TO_REGU_VARIABLE, and XASL_NEED_SINGLE_TUPLE_SCAN.
Referenced by qexec_execute_mainblock_internal().
|
static |
Definition at line 17183 of file query_executor.c.
References connectby_proc_node::after_cb_regu_list_pred, connectby_proc_node::after_cb_regu_list_rest, connectby_proc_node::after_connect_by_pred, xasl_node::connect_by, xasl_node::connect_by_ptr, connectby_proc_node::curr_tuple, xasl_node::dptr_list, ER_FAILED, eval_pred(), fetch_peek_dbval(), fetch_val_list(), xasl_node::fptr_list, xasl_node::instnum_flag, xasl_node::instnum_pred, xasl_node::instnum_val, xasl_node::iscycle_regu, xasl_node::iscycle_val, xasl_node::isleaf_regu, xasl_node::isleaf_val, xasl_node::level_regu, xasl_node::level_val, xasl_node::list_id, xasl_node::next, NO_ERROR, NULL, PEEK, xasl_node::proc, qexec_clear_head_lists(), qexec_clear_pred_xasl(), qexec_end_one_iteration(), qexec_eval_instnum_pred(), qfile_close_scan(), qfile_open_list_scan(), qfile_scan_list_next(), S_END, S_SUCCESS, xasl_node::scan_ptr, qfile_tuple_record::tpl, V_ERROR, V_TRUE, V_UNKNOWN, xasl_state::vd, and XASL_INSTNUM_FLAG_SCAN_STOP.
Referenced by qexec_execute_mainblock_internal().
|
static |
Definition at line 16551 of file query_executor.c.
References db_private_alloc, db_private_free_and_init, ER_FAILED, GOTO_EXIT_ON_ERROR, i, regu_variable_list_node::next, NO_ERROR, NO_SORT_LIMIT, NULL, ordbynum_info::ordbynum_flag, ordbynum_info::ordbynum_pos, ordbynum_info::ordbynum_pos_cnt, ordbynum_info::ordbynum_pred, ordbynum_info::ordbynum_val, PSTAT_SORT_NUM_DATA_PAGES, PSTAT_SORT_NUM_IO_PAGES, Q_ALL, QFILE_FLAG_ALL, qfile_is_sort_list_covered(), qfile_sort_list_with_func(), ordbynum_info::reserved, qfile_list_id::sort_list, thread_is_on_trace(), TSC_ADD_TIMEVAL, tsc_elapsed_time_usec(), tsc_getticks(), TYPE_ORDERBY_NUM, valptr_list_node::valptrp, regu_variable_list_node::value, and ordbynum_info::xasl_state.
Referenced by qexec_execute_connect_by().
|
static |
Definition at line 25145 of file query_executor.c.
References cubquery::aggregate_hash_context::accumulator_domains, cubquery::aggregate_hash_context::curr_part_key, cubquery::aggregate_hash_context::curr_part_value, DB_EQ, DB_GT, DB_LT, DB_NE, DB_UNK, ER_FAILED, SUBKEY_INFO::is_desc, SORTKEY_INFO::key, cubquery::aggregate_hash_context::key_domains, NO_ERROR, cubquery::aggregate_hash_context::part_scan_code, cubquery::aggregate_hash_context::part_scan_id, qdata_agg_hkey_compare(), qdata_load_agg_hentry_from_list(), S_ERROR, S_SUCCESS, and cubquery::aggregate_hash_context::sort_key.
Referenced by qexec_gby_put_next().
|
static |
Definition at line 8198 of file query_executor.c.
References xasl_node::bptr_list, xasl_node::dptr_list, eval_pred(), xasl_node::fetch, fetch_proc_node::fetch_res, xasl_node::fptr_list, GOTO_EXIT_ON_ERROR, xasl_node::if_pred, xasl_node::instnum_flag, xasl_node::instnum_pred, xasl_node::instnum_val, llist_scan_id::list_id, scan_id_struct::llsid, xasl_node::merge_spec, xasl_node::next, NO_ERROR, NULL, xasl_node::proc, qexec_clear_head_lists(), qexec_end_one_iteration(), qexec_eval_instnum_pred(), qexec_execute_mainblock(), qexec_execute_obj_fetch(), qexec_next_merge_block(), qexec_next_scan_block(), scan_id_struct::s, S_END, S_ERROR, S_LIST_SCAN, S_SELECT, S_SUCCESS, scan_close_scan(), scan_end_scan(), scan_next_scan(), xasl_node::scan_ptr, xasl_node::spec_list, scan_id_struct::type, qfile_tuple_value_type_list::type_cnt, qfile_list_id::type_list, V_ERROR, V_TRUE, V_UNKNOWN, xasl_state::vd, XASL_INSTNUM_FLAG_SCAN_STOP, XASL_IS_FLAGED, and XASL_LINK_TO_REGU_VARIABLE.
Referenced by qexec_execute_mainblock_internal().
|
static |
Definition at line 5241 of file query_executor.c.
References DB_EQ, DB_GT, DB_LT, DB_PAGESIZE, db_private_alloc, db_private_free_and_init, DB_UNK, qfile_tuple_value_type_list::domp, free_and_init, qfile_list_merge_info::ls_column_cnt, qfile_list_merge_info::ls_inner_column, qfile_list_merge_info::ls_outer_column, qfile_list_merge_info::ls_outer_inner_list, qfile_list_merge_info::ls_pos_cnt, qfile_list_merge_info::ls_pos_list, NO_ERROR, NULL, PEEK, qexec_cmp_tpl_vals_merge(), QEXEC_MERGE_ADD_MERGETUPLE, QEXEC_MERGE_NEXT_SCAN, QEXEC_MERGE_NEXT_SCAN_PVALS, QEXEC_MERGE_PREV_SCAN, QEXEC_MERGE_PVALS, QEXEC_MERGE_REV_SCAN_PVALS, qfile_close_list(), qfile_close_scan(), QFILE_FREE_AND_INIT_LIST_ID, QFILE_GET_TUPLE_VALUE_FLAG, qfile_jump_scan_tuple_position(), qfile_open_list(), qfile_open_list_scan(), QFILE_OUTER_LIST, qfile_reallocate_tuple(), qfile_save_current_scan_tuple_position(), qfile_list_id::query_id, S_BACKWARD, S_CLOSED, S_END, S_FORWARD, qfile_list_scan_id::status, qfile_tuple_record::tpl, qfile_list_id::tuple_cnt, qfile_tuple_value_type_list::type_cnt, qfile_list_id::type_list, and V_UNBOUND.
Referenced by qexec_merge_listfiles().
|
static |
Definition at line 5672 of file query_executor.c.
References DB_EQ, DB_GT, DB_LT, DB_NE, DB_PAGESIZE, db_private_alloc, db_private_free_and_init, DB_UNK, qfile_tuple_value_type_list::domp, eval_pred(), free_and_init, GOTO_EXIT_ON_ERROR, JOIN_LEFT, JOIN_OUTER, JOIN_RIGHT, qfile_list_merge_info::join_type, llist_scan_id::list_id, scan_id_struct::llsid, qfile_list_merge_info::ls_column_cnt, qfile_list_merge_info::ls_inner_column, qfile_list_merge_info::ls_outer_column, qfile_list_merge_info::ls_outer_inner_list, qfile_list_merge_info::ls_pos_cnt, qfile_list_merge_info::ls_pos_list, NO_ERROR, NULL, qexec_cmp_tpl_vals_merge(), QEXEC_MERGE_ADD_MERGETUPLE, QEXEC_MERGE_OUTER_NEXT_SCAN, QEXEC_MERGE_OUTER_NEXT_SCAN_PVALS, QEXEC_MERGE_OUTER_PREV_SCAN, QEXEC_MERGE_OUTER_PREV_SCAN_PVALS, QEXEC_MERGE_PVALS, qfile_close_list(), QFILE_FREE_AND_INIT_LIST_ID, QFILE_GET_TUPLE_VALUE_FLAG, qfile_open_list(), QFILE_OUTER_LIST, qfile_reallocate_tuple(), QPROC_QUALIFIED, QPROC_SINGLE_OUTER, scan_id_struct::qualification, qfile_list_id::query_id, scan_id_struct::s, S_BACKWARD, S_END, S_FORWARD, scan_end_scan(), scan_jump_scan_pos(), scan_save_scan_pos(), scan_start_scan(), qfile_list_merge_info::single_fetch, qfile_tuple_record::tpl, llist_scan_id::tplrecp, qfile_list_id::tuple_cnt, qfile_tuple_value_type_list::type_cnt, qfile_list_id::type_list, V_ERROR, V_TRUE, V_UNBOUND, V_UNKNOWN, and xasl_state::vd.
Referenced by qexec_merge_listfiles().
|
static |
Definition at line 6316 of file query_executor.c.
References xasl_node::after_join_pred, assert, ER_FAILED, GOTO_EXIT_ON_ERROR, mergelist_proc_node::inner_spec_list, mergelist_proc_node::inner_val_list, mergelist_proc_node::inner_xasl, JOIN_INNER, qfile_list_merge_info::join_type, xasl_node::list_id, mergelist_proc_node::ls_merge, xasl_node::mergelist, NO_ERROR, NULL, xasl_node::option, xasl_node::orderby_list, mergelist_proc_node::outer_spec_list, mergelist_proc_node::outer_val_list, mergelist_proc_node::outer_xasl, xasl_node::proc, Q_DISTINCT, qexec_close_scan(), qexec_merge_list(), qexec_merge_list_outer(), qexec_open_scan(), qexec_start_mainblock_iterations(), qfile_copy_list_id(), QFILE_FLAG_ALL, QFILE_FLAG_RESULT_FILE, QFILE_FREE_AND_INIT_LIST_ID, QFILE_SET_FLAG, xasl_state::query_id, S_SELECT, xasl_node::scan_op_type, qfile_tuple_value_type_list::type_cnt, qfile_list_id::type_list, xasl_state::vd, XASL_IS_FLAGED, XASL_SKIP_ORDERBY_LIST, XASL_TO_BE_CACHED, and XASL_TOP_MOST_XASL.
Referenced by qexec_end_mainblock_iterations().
|
static |
Definition at line 4990 of file query_executor.c.
References ER_FAILED, qfile_list_merge_info::ls_outer_inner_list, qfile_list_merge_info::ls_pos_cnt, qfile_list_merge_info::ls_pos_list, NO_ERROR, qexec_size_remaining(), QFILE_GET_TUPLE_VALUE_HEADER_POSITION, QFILE_GET_TUPLE_VALUE_LENGTH, QFILE_OUTER_LIST, QFILE_PUT_TUPLE_LENGTH, QFILE_PUT_TUPLE_VALUE_FLAG, QFILE_PUT_TUPLE_VALUE_LENGTH, qfile_reallocate_tuple(), QFILE_TUPLE_LENGTH_SIZE, QFILE_TUPLE_VALUE_HEADER_SIZE, qfile_tuple_record::size, qfile_tuple_record::tpl, and V_UNBOUND.
Referenced by qexec_merge_tuple_add_list().
|
static |
Definition at line 5069 of file query_executor.c.
References DB_ALIGN, qfile_list_merge_info::ls_pos_cnt, MAX_ALIGNMENT, qfile_tuple_descriptor::merge_info, NO_ERROR, qexec_merge_tuple(), qfile_add_tuple_to_list(), qfile_generate_tuple_into_list(), QFILE_GET_TUPLE_LENGTH, QFILE_MAX_TUPLE_SIZE_IN_PAGE, QFILE_TUPLE_VALUE_HEADER_SIZE, T_MERGE, qfile_tuple_record::tpl, qfile_list_id::tpl_descr, qfile_tuple_descriptor::tpl_size, qfile_tuple_descriptor::tplrec1, and qfile_tuple_descriptor::tplrec2.
|
static |
Definition at line 8525 of file query_executor.c.
References hybrid_node::cls_node, cubquery::upddel_mvcc_cond_reeval::cls_oid, cls_spec_node::cls_oid, upddel_class_info::mvcc_extra_assign_reev, cubquery::upddel_mvcc_cond_reeval::next, access_spec_node::next, NULL, OID_EQ, access_spec_node::s, xasl_node::scan_ptr, and xasl_node::spec_list.
Referenced by qexec_execute_delete(), and qexec_execute_update().
|
static |
Definition at line 6843 of file query_executor.c.
References access_spec_node::next, NO_ERROR, NULL, QEXEC_EMPTY_ACCESS_SPEC_SCAN, S_END, S_ERROR, S_SUCCESS, scan_end_scan(), scan_next_scan_block(), and scan_start_scan().
Referenced by qexec_merge_fnc().
|
static |
Definition at line 6907 of file query_executor.c.
References access_spec_node::access, ACCESS_METHOD_INDEX, ACCESS_METHOD_INDEX_KEY_INFO, ACCESS_METHOD_INDEX_NODE_INFO, ACCESS_METHOD_SEQUENTIAL, ACCESS_METHOD_SEQUENTIAL_PAGE_SCAN, ACCESS_METHOD_SEQUENTIAL_RECORD_INFO, ACCESS_SPEC_CLS_OID, ACCESS_SPEC_HFID, assert, COPY_OID, xasl_node::curr_spec, HFID_COPY, access_spec_node::next, NO_ERROR, NULL, QEXEC_EMPTY_ACCESS_SPEC_SCAN, qexec_init_next_partition(), access_spec_node::s, S_END, S_ERROR, S_SUCCESS, scan_end_scan(), scan_next_scan_block(), scan_start_scan(), xasl_node::spec_list, TARGET_CLASS, TARGET_CLASS_ATTR, and access_spec_node::type.
Referenced by qexec_merge_fnc(), and qexec_next_scan_block_iterations().
|
static |
Definition at line 7030 of file query_executor.c.
References xasl_node::curr_spec, xasl_node::next_scan_block_on, NULL, qexec_next_scan_block(), S_END, S_ERROR, S_STARTED, S_SUCCESS, scan_end_scan(), xasl_node::scan_ptr, and scan_reset_scan_block().
Referenced by qexec_execute_connect_by(), qexec_execute_delete(), qexec_execute_insert(), qexec_execute_update(), and qexec_intprt_fnc().
|
static |
Definition at line 10469 of file query_executor.c.
References recdes::area_size, ARG_FILE_LINE, assert, BTREE_ERROR_OCCURRED, BTREE_IS_MULTI_ROW_OP, btree_is_unique_type(), BTREE_KEY_FOUND, BTREE_SET_UNIQUE_VIOLATION_ERROR, or_partition::class_oid, COPY_OID, recdes::data, db_make_null(), DB_NOT_PARTITIONED_CLASS, DB_PARTITION_CLASS, DBVAL_BUFSIZE, er_errid(), ER_ERROR_SEVERITY, ER_FAILED, ER_INVALID_DATA_FOR_PARTITION, er_set(), heap_idx_elements_info::has_single_col, heap_attrinfo_clear_dbvalues(), heap_attrinfo_read_dbvalues(), heap_attrvalue_get_key(), i, or_index::index_status, LOB_FLAG_INCLUDE_LOB, locator_allocate_copy_area_by_attr_info(), locator_free_copy_area(), locator_get_partition_scancache(), MAX_ALIGNMENT, MULTI_ROW_UPDATE, NO_ERROR, NULL, heap_idx_elements_info::num_btids, OID_EQ, OID_ISNULL, oid_Null_oid, OID_SET_NULL, OR_ONLINE_INDEX_BUILDING_IN_PROGRESS, partition_prune_unique_btid(), pr_clear_value(), PTR_ALIGN, S_UPDATE, pruning_scan_cache::scan_cache, pruning_context::selected_partition, SINGLE_ROW_UPDATE, or_index::type, and xbtree_find_unique().
Referenced by qexec_execute_duplicate_key_update().
|
static |
Definition at line 6442 of file query_executor.c.
References access_spec_node::access, ACCESS_METHOD_INDEX, ACCESS_METHOD_INDEX_KEY_INFO, ACCESS_METHOD_INDEX_NODE_INFO, ACCESS_METHOD_SEQUENTIAL, ACCESS_METHOD_SEQUENTIAL_PAGE_SCAN, ACCESS_METHOD_SEQUENTIAL_RECORD_INFO, ACCESS_SPEC_CLS_OID, ACCESS_SPEC_CONNECT_BY_LIST_ID, ACCESS_SPEC_FLAG_FOR_UPDATE, ACCESS_SPEC_HFID, ACCESS_SPEC_LIST_ID, ACCESS_SPEC_METHOD_LIST_ID, ACCESS_SPEC_METHOD_SIG_LIST, ACCESS_SPEC_RLIST_VALPTR_LIST, ACCESS_SPEC_SET_PTR, ACCESS_SPEC_SET_REGU_LIST, ACCESS_SPEC_XASL_NODE, ARG_FILE_LINE, showstmt_spec_node::arg_list, assert, ASSERT_ERROR, ASSERT_ERROR_AND_SET, cls_spec_node::attrids_key, cls_spec_node::attrids_pred, cls_spec_node::attrids_range, cls_spec_node::attrids_rest, cls_spec_node::cache_key, cls_spec_node::cache_pred, cls_spec_node::cache_range, cls_spec_node::cache_reserved, cls_spec_node::cache_rest, hybrid_node::cls_node, cls_spec_node::cls_output_val_list, cls_spec_node::cls_regu_list_key, cls_spec_node::cls_regu_list_pred, cls_spec_node::cls_regu_list_range, cls_spec_node::cls_regu_list_reserved, cls_spec_node::cls_regu_list_rest, cls_spec_node::cls_regu_val_list, DB_PARTITIONED_CLASS, db_private_free, ER_ERROR_SEVERITY, ER_QPROC_INVALID_XASLNODE, er_set(), access_spec_node::flags, list_spec_node::hash_list_scan_yn, access_spec_node::indexptr, hybrid_node::list_node, list_spec_node::list_regu_list_build, list_spec_node::list_regu_list_pred, list_spec_node::list_regu_list_probe, list_spec_node::list_regu_list_rest, mvcc_is_mvcc_disabled_class(), NO_ERROR, NULL, cls_spec_node::num_attrs_key, cls_spec_node::num_attrs_pred, cls_spec_node::num_attrs_range, cls_spec_node::num_attrs_rest, OID_CACHE_COLLATION_CLASS_ID, OID_CACHE_HA_APPLY_INFO_CLASS_ID, oid_check_cached_class_oid(), oid_is_serial(), perfmon_inc_stat(), access_spec_node::pruning_type, PSTAT_QM_NUM_ISCANS, qexec_prune_spec(), access_spec_node::s, access_spec_node::s_dbval, S_DELETE, S_HEAP_PAGE_SCAN, S_HEAP_SCAN, S_HEAP_SCAN_RECORD_INFO, S_INDX_KEY_INFO_SCAN, S_INDX_NODE_INFO_SCAN, S_INDX_SCAN, S_UPDATE, scan_id_struct::scan_immediately_stop, scan_open_class_attr_scan(), scan_open_heap_page_scan(), scan_open_heap_scan(), scan_open_index_key_info_scan(), scan_open_index_node_info_scan(), scan_open_index_scan(), scan_open_json_table_scan(), scan_open_list_scan(), scan_open_method_scan(), scan_open_set_scan(), scan_open_showstmt_scan(), scan_open_values_scan(), showstmt_spec_node::show_type, hybrid_node::showstmt_node, access_spec_node::single_fetch, TARGET_CLASS, TARGET_CLASS_ATTR, TARGET_JSON_TABLE, TARGET_LIST, TARGET_METHOD, TARGET_REGUVAL_LIST, TARGET_SET, TARGET_SHOWSTMT, access_spec_node::type, access_spec_node::where_key, access_spec_node::where_pred, and access_spec_node::where_range.
Referenced by qexec_execute_connect_by(), qexec_execute_delete(), qexec_execute_insert(), qexec_execute_mainblock_internal(), qexec_execute_update(), and qexec_merge_listfiles().
|
static |
Definition at line 2860 of file query_executor.c.
References assert, recdes::data, db_make_bigint(), db_private_free_and_init, er_errid(), ER_FAILED, error(), SORT_INFO::extra_arg, for(), i, SORT_INFO::key_info, qfile_list_scan_id::list_id, SORT_REC::next, NO_ERROR, NULL, NULL_PAGEID, ordbynum_info::ordbynum_flag, ordbynum_info::ordbynum_pos, ordbynum_info::ordbynum_pos_cnt, ordbynum_info::ordbynum_val, SORT_REC::original, SORT_INFO::output_file, SORT_INFO::output_recdes, vpid::pageid, qdata_copy_db_value_to_tuple_value(), qexec_eval_ordbynum_pred(), qfile_add_overflow_tuple_to_list(), qfile_add_tuple_to_list(), qfile_generate_sort_tuple(), QFILE_GET_OVERFLOW_VPID, qfile_get_tuple(), QFILE_GET_TUPLE_VALUE_HEADER_POSITION, qmgr_free_old_page_and_init, qmgr_get_old_page(), SORT_REC::s, SORT_INFO::s_id, qfile_sort_scan_id::s_id, qfile_tuple_record::size, SORT_PUT_STOP, qfile_list_id::tfile_vfid, qfile_tuple_record::tpl, SORTKEY_INFO::use_original, V_ERROR, V_TRUE, vpid::volid, VPID_EQ, and XASL_ORDBYNUM_FLAG_SCAN_STOP.
Referenced by qexec_orderby_distinct_by_sorting().
|
static |
Definition at line 3123 of file query_executor.c.
References error(), NO_ERROR, NULL, PSTAT_SORT_NUM_DATA_PAGES, PSTAT_SORT_NUM_IO_PAGES, qexec_orderby_distinct_by_sorting(), qexec_topn_tuples_to_list_id(), thread_is_on_trace(), TSC_ADD_TIMEVAL, tsc_elapsed_time_usec(), and tsc_getticks().
Referenced by qexec_execute_build_indexes(), and qexec_execute_mainblock_internal().
|
static |
Definition at line 3187 of file query_executor.c.
References buildlist_proc_node::a_eval_list, buildlist_proc_node::a_outptr_list, xasl_node::buildlist, BUILDLIST_PROC, db_private_alloc, db_private_free_and_init, qfile_tuple_value_position::dom, qfile_tuple_value_type_list::domp, ER_FAILED, error(), buildlist_proc_node::g_outptr_list, GOTO_EXIT_ON_ERROR, buildlist_proc_node::groupby_list, i, access_spec_node::indexptr, xasl_node::list_id, regu_variable_list_node::next, sort_list::next, NO_ERROR, NO_SORT_LIMIT, NULL, ordbynum_info::ordbynum_flag, xasl_node::ordbynum_flag, ordbynum_info::ordbynum_pos, ordbynum_info::ordbynum_pos_cnt, ordbynum_info::ordbynum_pred, xasl_node::ordbynum_pred, ordbynum_info::ordbynum_val, xasl_node::ordbynum_val, xasl_node::orderby_list, xasl_node::outptr_list, sort_list::pos_descr, qfile_tuple_value_position::pos_no, xasl_node::proc, Q_DISTINCT, qexec_fill_sort_limit(), qexec_ordby_put_next(), qexec_resolve_domains_on_sort_list(), qfile_allocate_sort_list(), QFILE_FLAG_ALL, QFILE_FLAG_DISTINCT, QFILE_FLAG_RESULT_FILE, qfile_free_sort_list(), qfile_is_sort_list_covered(), QFILE_SET_FLAG, qfile_sort_list_with_func(), ordbynum_info::reserved, S_ASC, S_DESC, sort_list::s_nulls, S_NULLS_FIRST, S_NULLS_LAST, sort_list::s_order, qfile_list_id::sort_list, xasl_node::spec_list, xasl_node::type, qfile_tuple_value_type_list::type_cnt, qfile_list_id::type_list, TYPE_ORDERBY_NUM, indx_info::use_desc_index, valptr_list_node::valptrp, regu_variable_list_node::value, XASL_IS_FLAGED, ordbynum_info::xasl_state, XASL_TO_BE_CACHED, and XASL_TOP_MOST_XASL.
Referenced by qexec_orderby_distinct().
|
static |
Definition at line 9539 of file query_executor.c.
References assert, ASSERT_ERROR, BTREE_SET_UNIQUE_VIOLATION_ERROR, heap_scancache_node::class_oid, ER_BTREE_UNIQUE_FAILED, error(), free_and_init, multi_index_unique_stats::get_map(), heap_get_indexinfo_of_btid(), pruning_scan_cache::is_scan_cache_started, logtb_tran_update_unique_stats(), heap_scancache::m_index_stats, scancache_list::next, NO_ERROR, heap_scancache::node, NULL, pruning_scan_cache::scan_cache, scancache_list::scan_cache, and pruning_context::scan_cache_list.
Referenced by qexec_execute_delete(), qexec_execute_insert(), and qexec_execute_update().
|
static |
Definition at line 9497 of file query_executor.c.
References assert, ASSERT_ERROR, BTREE_SET_UNIQUE_VIOLATION_ERROR, ER_BTREE_UNIQUE_FAILED, error(), multi_index_unique_stats::get_map(), logtb_tran_update_unique_stats(), upddel_class_info_internal::m_inited_scancache, upddel_class_info_internal::m_scancache, upddel_class_info_internal::m_unique_stats, NO_ERROR, NULL, and qexec_update_btree_unique_stats_info().
Referenced by qexec_execute_delete(), and qexec_execute_update().
|
static |
Definition at line 7515 of file query_executor.c.
References ACCESS_SPEC_CLS_OID, ACCESS_SPEC_FLAG_FOR_UPDATE, ASSERT_ERROR, ASSERT_ERROR_AND_SET, COMPOSITE_LOCK, DB_PARTITIONED_CLASS, error(), access_spec_node::flags, IS_LOCK, IX_LOCK, LK_GRANTED, LK_UNCOND_LOCK, lock_subclass(), NO_ERROR, NULL, NULL_LOCK, partition_prune_spec(), and access_spec_node::pruning_type.
Referenced by qexec_execute_selupd_list_find_class(), and qexec_open_scan().
|
static |
Definition at line 16817 of file query_executor.c.
References qfile_list_scan_id::curr_pgptr, qfile_list_scan_id::curr_vpid, DB_DEFAULT_PRECISION, db_get_int(), db_make_bit(), db_private_alloc, db_private_free_and_init, ER_FAILED, i, NO_ERROR, NULL, PCOL_LEVEL_TUPLE_OFFSET, PCOL_PARENTPOS_TUPLE_OFFSET, PEEK, qexec_get_tuple_column_value(), qfile_close_scan(), qfile_open_list_scan(), qfile_save_current_scan_tuple_position(), qfile_scan_list_next(), qfile_set_tuple_column_value(), REINTERPRET_CAST, S_CLOSED, S_END, S_SUCCESS, parent_pos_info::stack, qfile_list_scan_id::status, tp_Bit_domain, tp_Integer_domain, qfile_tuple_record::tpl, parent_pos_info::tpl_pos, qfile_tuple_value_type_list::type_cnt, and qfile_list_id::type_list.
Referenced by qexec_execute_connect_by().
|
static |
Definition at line 10238 of file query_executor.c.
References recdes::area_size, assert, assert_release, or_index::btid, BTID_COPY, BTREE_ERROR_OCCURRED, BTREE_IS_MULTI_ROW_OP, btree_is_unique_type(), BTREE_KEY_FOUND, BTREE_SET_UNIQUE_VIOLATION_ERROR, COPY_OID, recdes::data, db_make_null(), DB_NOT_PARTITIONED_CLASS, DBVAL_BUFSIZE, er_errid(), ER_FAILED, ER_MVCC_NOT_SATISFIED_REEVALUATION, heap_idx_elements_info::has_single_col, heap_attrinfo_clear_dbvalues(), heap_attrinfo_read_dbvalues(), heap_attrvalue_get_key(), heap_scancache_node::hfid, HFID_COPY, i, or_index::index_status, LC_FLUSH_DELETE, LOB_FLAG_EXCLUDE_LOB, locator_allocate_copy_area_by_attr_info(), locator_attribute_info_force(), locator_delete_lob_force(), locator_free_copy_area(), locator_get_partition_scancache(), MAX_ALIGNMENT, MULTI_ROW_DELETE, NO_ERROR, heap_scancache::node, NULL, heap_idx_elements_info::num_btids, OID_ISNULL, oid_Null_oid, OID_SET_NULL, OR_ONLINE_INDEX_BUILDING_IN_PROGRESS, partition_prune_unique_btid(), pr_clear_value(), PTR_ALIGN, REPL_INFO_TYPE_RBR_NORMAL, S_DELETE, pruning_scan_cache::scan_cache, SINGLE_ROW_DELETE, or_index::type, UPDATE_INPLACE_NONE, and xbtree_find_unique().
Referenced by qexec_execute_insert().
|
static |
Definition at line 16087 of file query_executor.c.
References regu_variable_list_node::next, NULL, qexec_replace_prior_regu_vars_prior_expr(), T_PRIOR, TYPE_FUNC, TYPE_INARITH, TYPE_OUTARITH, and regu_variable_list_node::value.
Referenced by qexec_execute_connect_by(), and qexec_replace_prior_regu_vars_pred().
|
static |
Definition at line 16135 of file query_executor.c.
References cubxasl::alsm_eval_term::elem, cubxasl::alsm_eval_term::elemset, cubxasl::eval_term::et, cubxasl::eval_term::et_alsm, cubxasl::eval_term::et_comp, cubxasl::eval_term::et_like, cubxasl::eval_term::et_rlike, cubxasl::eval_term::et_type, cubxasl::pred::lhs, cubxasl::comp_eval_term::lhs, cubxasl::pred_expr::m_eval_term, cubxasl::pred_expr::m_not_term, cubxasl::pred_expr::m_pred, NULL, cubxasl::like_eval_term::pattern, cubxasl::rlike_eval_term::pattern, cubxasl::pred_expr::pe, qexec_replace_prior_regu_vars(), cubxasl::pred::rhs, cubxasl::comp_eval_term::rhs, cubxasl::like_eval_term::src, cubxasl::rlike_eval_term::src, T_ALSM_EVAL_TERM, T_COMP_EVAL_TERM, T_EVAL_TERM, T_LIKE_EVAL_TERM, T_NOT_TERM, T_PRED, T_RLIKE_EVAL_TERM, and cubxasl::pred_expr::type.
Referenced by qexec_execute_connect_by().
void qexec_replace_prior_regu_vars_prior_expr | ( | THREAD_ENTRY * | thread_p, |
regu_variable_node * | regu, | ||
xasl_node * | xasl, | ||
xasl_node * | connect_by_ptr | ||
) |
Definition at line 16029 of file query_executor.c.
References regu_variable_node::regu_data_value::arithptr, xasl_node::connect_by, regu_variable_node::regu_data_value::dbvalptr, regu_variable_node::regu_data_value::funcp, i, arith_list_node::leftptr, qproc_db_value_list::next, regu_variable_list_node::next, NULL, function_node::operand, connectby_proc_node::prior_val_list, xasl_node::proc, qexec_replace_prior_regu_vars_prior_expr(), arith_list_node::rightptr, arith_list_node::thirdptr, regu_variable_node::type, TYPE_CONSTANT, TYPE_FUNC, TYPE_INARITH, TYPE_OUTARITH, qproc_db_value_list::val, xasl_node::val_list, val_list_node::valp, regu_variable_node::value, and regu_variable_list_node::value.
Referenced by qdata_evaluate_qprior(), qexec_replace_prior_regu_vars(), and qexec_replace_prior_regu_vars_prior_expr().
|
static |
Definition at line 7415 of file query_executor.c.
References cubxasl::rlike_eval_term::case_sensitive, cubxasl::alsm_eval_term::elem, cubxasl::alsm_eval_term::elemset, cubxasl::like_eval_term::esc_char, cubxasl::eval_term::et, cubxasl::eval_term::et_alsm, cubxasl::eval_term::et_comp, cubxasl::eval_term::et_like, cubxasl::eval_term::et_rlike, cubxasl::eval_term::et_type, cubxasl::pred::lhs, cubxasl::comp_eval_term::lhs, cubxasl::pred_expr::m_eval_term, cubxasl::pred_expr::m_not_term, cubxasl::pred_expr::m_pred, NULL, cubxasl::like_eval_term::pattern, cubxasl::rlike_eval_term::pattern, cubxasl::pred_expr::pe, qexec_reset_regu_variable(), cubxasl::pred::rhs, cubxasl::comp_eval_term::rhs, cubxasl::like_eval_term::src, cubxasl::rlike_eval_term::src, T_ALSM_EVAL_TERM, T_COMP_EVAL_TERM, T_EVAL_TERM, T_LIKE_EVAL_TERM, T_NOT_TERM, T_PRED, T_RLIKE_EVAL_TERM, and cubxasl::pred_expr::type.
Referenced by qexec_init_next_partition().
|
static |
Definition at line 16755 of file query_executor.c.
References pr_clear_value().
Referenced by qexec_execute_connect_by().
|
static |
Definition at line 7476 of file query_executor.c.
References NULL, qexec_reset_regu_variable_list(), TYPE_ATTR_ID, TYPE_CLASS_ATTR_ID, TYPE_FUNC, TYPE_INARITH, TYPE_OUTARITH, and TYPE_SHARED_ATTR_ID.
Referenced by qexec_reset_pred_expr(), and qexec_reset_regu_variable_list().
|
static |
Definition at line 7398 of file query_executor.c.
References regu_variable_list_node::next, NULL, qexec_reset_regu_variable(), and regu_variable_list_node::value.
Referenced by qexec_init_next_partition(), and qexec_reset_regu_variable().
|
static |
Definition at line 18520 of file query_executor.c.
References cubxasl::aggregate_list_node::accumulator, ARG_FILE_LINE, assert, db_change_private_heap(), DB_DEFAULT_PRECISION, DB_DEFAULT_SCALE, DB_DOUBLE_DECIMAL_PRECISION, DB_IS_NULL, db_make_double(), DB_MAX_NUMERIC_PRECISION, DB_TYPE_BIGINT, DB_TYPE_DATE, DB_TYPE_DATETIME, DB_TYPE_DATETIMELTZ, DB_TYPE_DATETIMETZ, DB_TYPE_DOUBLE, DB_TYPE_FLOAT, DB_TYPE_INTEGER, DB_TYPE_MONETARY, DB_TYPE_NULL, DB_TYPE_NUMERIC, DB_TYPE_SHORT, DB_TYPE_TIME, DB_TYPE_TIMESTAMP, DB_TYPE_TIMESTAMPLTZ, DB_TYPE_TIMESTAMPTZ, DB_TYPE_VARCHAR, DB_TYPE_VARIABLE, db_value_domain_init(), DB_VALUE_DOMAIN_TYPE, DB_VALUE_SCALE, DB_VALUE_TYPE, cubxasl::aggregate_list_node::domain, DOMAIN_COMPATIBLE, ER_ARG_CAN_NOT_BE_CASTED_TO_DESIRED_DOMAIN, ER_ERROR_SEVERITY, ER_FAILED, er_set(), error(), F_BENCHMARK, fcode_get_uppercase_name(), fetch_peek_dbval(), fetch_val_list(), cubxasl::aggregate_list_node::function, cubxasl::aggregate_list_node::next, NO_ERROR, NULL, cubxasl::aggregate_list_node::operands, cubxasl::aggregate_list_node::opr_dbtype, pr_clear_value(), PT_AGG_BIT_AND, PT_AGG_BIT_OR, PT_AGG_BIT_XOR, PT_AVG, PT_COUNT, PT_COUNT_STAR, PT_CUME_DIST, PT_GROUP_CONCAT, PT_GROUPBY_NUM, PT_JSON_ARRAYAGG, PT_JSON_OBJECTAGG, PT_MAX, PT_MEDIAN, PT_MIN, PT_PERCENT_RANK, PT_PERCENTILE_CONT, PT_PERCENTILE_DISC, PT_STDDEV, PT_STDDEV_POP, PT_STDDEV_SAMP, PT_SUM, PT_VAR_POP, PT_VAR_SAMP, PT_VARIANCE, REGU_VARIABLE_CLEAR_AT_CLONE_DECACHE, REGU_VARIABLE_IS_FLAGED(), tp_domain::scale, TP_DOMAIN_COLL_NORMAL, TP_DOMAIN_COLLATION_FLAG, tp_domain_resolve(), tp_domain_resolve_default(), tp_domain_resolve_value(), TP_DOMAIN_TYPE, tp_Double_domain, tp_Integer_domain, TP_IS_CHAR_TYPE, TP_IS_NUMERIC_TYPE, tp_Json_domain, tp_Null_domain, tp_value_cast(), qfile_tuple_record::tpl, TYPE_CONSTANT, TYPE_DBVAL, TYPE_FUNC, TYPE_INARITH, cubxasl::aggregate_accumulator::value, regu_variable_list_node::value, cubxasl::aggregate_accumulator::value2, and xasl_state::vd.
Referenced by qexec_end_one_iteration().
|
static |
Definition at line 18258 of file query_executor.c.
References cubxasl::aggregate_list_node::accumulator, cubquery::aggregate_hash_context::accumulator_domains, assert, DB_DEFAULT_PRECISION, DB_DEFAULT_SCALE, db_string_put_cs_and_collation(), DB_TYPE_VARCHAR, DB_TYPE_VARIABLE, db_value_domain_init(), DB_VALUE_TYPE, cubxasl::aggregate_list_node::domain, qfile_tuple_value_type_list::domp, cubxasl::aggregate_list_node::function, buildlist_proc_node::g_agg_list, buildlist_proc_node::g_func_count, buildlist_proc_node::g_hash_eligible, buildlist_proc_node::g_hk_sort_regu_list, buildlist_proc_node::g_hkey_size, buildlist_proc_node::g_outptr_list, buildlist_proc_node::g_regu_list, buildlist_proc_node::g_val_list, buildlist_proc_node::groupby_list, i, if(), cubquery::aggregate_hash_context::key_domains, cubxasl::aggregate_list_node::next, qproc_db_value_list::next, regu_variable_list_node::next, NULL, cubxasl::aggregate_list_node::operands, cubxasl::aggregate_list_node::opr_dbtype, cubquery::aggregate_hash_context::part_list_id, PT_AGG_BIT_AND, PT_AGG_BIT_OR, PT_AGG_BIT_XOR, PT_AVG, PT_COUNT, PT_GROUP_CONCAT, PT_JSON_ARRAYAGG, PT_JSON_OBJECTAGG, PT_MAX, PT_MIN, PT_STDDEV, PT_STDDEV_POP, PT_STDDEV_SAMP, PT_SUM, PT_VAR_POP, PT_VAR_SAMP, PT_VARIANCE, qexec_resolve_domains_on_sort_list(), QPROC_IS_INTERPOLATION_FUNC, cubquery::aggregate_hash_context::sorted_part_list_id, TP_DOMAIN_CODESET, TP_DOMAIN_COLL_NORMAL, TP_DOMAIN_COLLATION, TP_DOMAIN_COLLATION_FLAG, tp_domain_resolve_default(), TP_DOMAIN_TYPE, tp_Integer_domain, tp_Null_domain, TP_TYPE_HAS_COLLATION, TYPE_CONSTANT, qfile_list_id::type_list, TYPE_POSITION, qproc_db_value_list::val, val_list_node::valp, valptr_list_node::valptrp, cubxasl::aggregate_accumulator::value, and regu_variable_list_node::value.
Referenced by qexec_groupby().
|
static |
Definition at line 18211 of file query_executor.c.
References assert, DB_TYPE_VARIABLE, qfile_tuple_value_position::dom, regu_variable_list_node::next, sort_list::next, NULL, sort_list::pos_descr, qfile_tuple_value_position::pos_no, TP_DOMAIN_COLL_NORMAL, TP_DOMAIN_COLLATION_FLAG, TP_DOMAIN_TYPE, and regu_variable_list_node::value.
Referenced by qexec_execute_analytic(), qexec_orderby_distinct_by_sorting(), and qexec_resolve_domains_for_group_by().
Definition at line 22232 of file query_executor.c.
References assert, db_enumeration::count, DATA_STATUS_OK, db_json_get_schema_raw_from_validator(), db_make_int(), db_make_null(), db_make_string(), db_string_concatenate(), DB_TYPE_BIT, DB_TYPE_CHAR, DB_TYPE_ENUMERATION, DB_TYPE_JSON, DB_TYPE_MULTISET, DB_TYPE_NCHAR, DB_TYPE_NUMERIC, DB_TYPE_SEQUENCE, DB_TYPE_SET, DB_TYPE_VARBIT, DB_TYPE_VARCHAR, DB_TYPE_VARNCHAR, DOMAIN_COMPATIBLE, db_enumeration::elements, tp_domain::enumeration, ER_FAILED, ER_OUT_OF_VIRTUAL_MEMORY, err, free_and_init, i, pr_type::id, tp_domain::json_validator, min, tp_domain::next, NO_ERROR, NULL, pr_clear_value(), pr_clone_value(), tp_domain::precision, qexec_schema_get_type_name_from_id(), tp_domain::scale, tp_domain::setdomain, tp_String_domain, tp_value_cast(), and tp_domain::type.
Referenced by qexec_execute_build_columns().
Definition at line 22129 of file query_executor.c.
References DB_TYPE_BIGINT, DB_TYPE_BIT, DB_TYPE_BLOB, DB_TYPE_CHAR, DB_TYPE_CLOB, DB_TYPE_DATE, DB_TYPE_DATETIME, DB_TYPE_DATETIMELTZ, DB_TYPE_DATETIMETZ, DB_TYPE_DOUBLE, DB_TYPE_ENUMERATION, DB_TYPE_FLOAT, DB_TYPE_INTEGER, DB_TYPE_JSON, DB_TYPE_MONETARY, DB_TYPE_MULTISET, DB_TYPE_NCHAR, DB_TYPE_NUMERIC, DB_TYPE_OBJECT, DB_TYPE_OID, DB_TYPE_SEQUENCE, DB_TYPE_SET, DB_TYPE_SMALLINT, DB_TYPE_TIME, DB_TYPE_TIMESTAMP, DB_TYPE_TIMESTAMPLTZ, DB_TYPE_TIMESTAMPTZ, DB_TYPE_VARBIT, DB_TYPE_VARCHAR, and DB_TYPE_VARNCHAR.
Referenced by qexec_schema_get_type_desc().
|
static |
Definition at line 21557 of file query_executor.c.
References access_spec_node::access, ACCESS_METHOD_SEQUENTIAL, assert, upddel_class_info::class_oid, hybrid_node::cls_node, cls_spec_node::cls_oid, er_errid(), ER_FAILED, error(), i, IX_LOCK, LK_GRANTED, LK_UNCOND_LOCK, lock_object(), access_spec_node::next, NO_ERROR, NULL, upddel_class_info::num_subclasses, OID_EQ, oid_Root_class_oid, access_spec_node::s, xasl_node::scan_ptr, xasl_node::spec_list, TARGET_CLASS, TARGET_SET, and access_spec_node::type.
Referenced by qexec_execute_delete(), and qexec_execute_update().
|
static |
Definition at line 16663 of file query_executor.c.
References xasl_node::connect_by, DB_DEFAULT_PRECISION, db_make_int(), DB_TYPE_BIT, DB_TYPE_VARCHAR, db_value_domain_init(), error(), i, regu_variable_list_node::next, NO_ERROR, xasl_node::outptr_list, PCOL_INDEX_STRING_TUPLE_OFFSET, PCOL_ISCYCLE_TUPLE_OFFSET, PCOL_ISLEAF_TUPLE_OFFSET, PCOL_LEVEL_TUPLE_OFFSET, PCOL_PARENTPOS_TUPLE_OFFSET, connectby_proc_node::prior_outptr_list, xasl_node::proc, valptr_list_node::valptr_cnt, valptr_list_node::valptrp, and regu_variable_list_node::value.
Referenced by qexec_execute_connect_by().
|
static |
Definition at line 8384 of file query_executor.c.
References ARG_FILE_LINE, assert, qfile_tuple_value_type_list::domp, ER_ERROR_SEVERITY, ER_FAILED, ER_OUT_OF_VIRTUAL_MEMORY, er_set(), INSERT_PROC, qfile_list_id::last_pgptr, xasl_node::list_id, NO_ERROR, NULL, qfile_list_id::page_cnt, QFILE_PUT_NEXT_VPID_NULL, qfile_update_qlist_count(), qmgr_create_new_temp_file(), qfile_list_id::query_id, TEMP_FILE_MEMBUF_NORMAL, qmgr_temp_file::temp_vfid, qfile_list_id::temp_vfid, qfile_list_id::tfile_vfid, tp_Object_domain, qfile_list_id::tuple_cnt, xasl_node::type, qfile_tuple_value_type_list::type_cnt, qfile_list_id::type_list, VFID_COPY, XASL_IS_FLAGED, and XASL_RETURN_GENERATED_KEYS.
Referenced by qexec_execute_delete(), qexec_execute_insert(), qexec_execute_merge(), and qexec_execute_update().
|
static |
Definition at line 23843 of file query_executor.c.
References buildlist_proc_node::a_eval_list, bh_create(), bh_destroy(), xasl_node::buildlist, BUILDLIST_PROC, cubregex::count(), db_get_int(), DB_IS_NULL, db_make_null(), db_private_alloc, db_private_free, DB_TYPE_INTEGER, DB_VALUE_TYPE, DOMAIN_COMPATIBLE, ER_FAILED, error(), buildlist_proc_node::groupby_list, IO_PAGESIZE, regu_variable_list_node::next, NO_ERROR, NULL, xasl_node::option, xasl_node::ordbynum_pred, xasl_node::orderby_list, xasl_node::outptr_list, pr_clear_value(), prm_get_integer_value(), PRM_ID_SR_NBUFFERS, xasl_node::proc, Q_DISTINCT, qexec_get_orderbynum_upper_bound(), qexec_topn_compare(), QFILE_MAX_TUPLE_SIZE_IN_PAGE, REGU_VARIABLE_HIDDEN_COLUMN, REGU_VARIABLE_IS_FLAGED(), tp_domain_memory_size(), TP_DOMAIN_TYPE, TP_FLOATING_PRECISION_VALUE, tp_Integer_domain, TP_IS_SET_TYPE, tp_value_cast(), xasl_node::type, valptr_list_node::valptrp, regu_variable_list_node::value, XASL_HAS_CONNECT_BY, XASL_IS_FLAGED, XASL_SKIP_ORDERBY_LIST, and XASL_USES_MRO.
Referenced by qexec_start_mainblock_iterations().
|
static |
Definition at line 4946 of file query_executor.c.
References i, qfile_list_merge_info::ls_outer_inner_list, qfile_list_merge_info::ls_pos_cnt, qfile_list_merge_info::ls_pos_list, QFILE_GET_TUPLE_VALUE_HEADER_POSITION, QFILE_GET_TUPLE_VALUE_LENGTH, QFILE_OUTER_LIST, QFILE_TUPLE_VALUE_HEADER_SIZE, and qfile_tuple_record::tpl.
Referenced by qexec_merge_tuple().
|
static |
Definition at line 17017 of file query_executor.c.
References xasl_node::connect_by, db_private_free_and_init, qfile_tuple_value_type_list::domp, ER_FAILED, connectby_proc_node::input_list_id, NO_ERROR, NULL, xasl_node::outptr_list, xasl_node::proc, qdata_get_valptr_type_list(), qfile_copy_list_id(), QFILE_FREE_AND_INIT_LIST_ID, qfile_open_list(), xasl_state::query_id, connectby_proc_node::start_with_list_id, qfile_tuple_value_type_list::type_cnt, and qfile_list_id::type_list.
Referenced by qexec_execute_mainblock_internal().
int qexec_start_mainblock_iterations | ( | THREAD_ENTRY * | thread_p, |
xasl_node * | xasl, | ||
xasl_state * | xasl_state | ||
) |
Definition at line 12910 of file query_executor.c.
References buildlist_proc_node::a_eval_list, xasl_node::after_iscan_list, buildvalue_proc_node::agg_list, ARG_FILE_LINE, BUILD_SCHEMA_PROC, xasl_node::buildlist, BUILDLIST_PROC, xasl_node::buildvalue, BUILDVALUE_PROC, CONNECTBY_PROC, CTE_PROC, db_make_bigint(), db_make_int(), db_private_free_and_init, DIFFERENCE_PROC, qfile_tuple_value_type_list::domp, ER_ERROR_SEVERITY, ER_FAILED, ER_QPROC_INVALID_XASLNODE, er_set(), buildlist_proc_node::g_grbynum_val, GOTO_EXIT_ON_ERROR, buildvalue_proc_node::grbynum_val, buildlist_proc_node::groupby_list, xasl_node::instnum_val, INTERSECTION_PROC, xasl_node::iscycle_val, xasl_node::isleaf_val, xasl_node::level_val, xasl_node::list_id, MERGELIST_PROC, NO_ERROR, NULL, xasl_node::option, xasl_node::ordbynum_val, xasl_node::orderby_list, xasl_node::outptr_list, xasl_node::proc, Q_DISTINCT, qdata_get_valptr_type_list(), qdata_initialize_aggregate_list(), qexec_clear_regu_list(), qexec_destroy_upddel_ehash_files(), qexec_init_instnum_val(), qexec_init_upddel_ehash_files(), QEXEC_IS_MULTI_TABLE_UPDATE_DELETE, qexec_setup_topn_proc(), qfile_copy_list_id(), QFILE_FLAG_ALL, QFILE_FLAG_RESULT_FILE, QFILE_FREE_AND_INIT_LIST_ID, qfile_free_list_id(), qfile_open_list(), QFILE_SET_FLAG, xasl_state::query_id, xasl_node::type, qfile_tuple_value_type_list::type_cnt, qfile_list_id::type_list, UNION_PROC, valptr_list_node::valptrp, xasl_state::vd, XASL_HAS_CONNECT_BY, XASL_IS_FLAGED, XASL_MULTI_UPDATE_AGG, XASL_SKIP_ORDERBY_LIST, XASL_TO_BE_CACHED, and XASL_TOP_MOST_XASL.
Referenced by qexec_execute_build_columns(), qexec_execute_build_indexes(), qexec_execute_connect_by(), qexec_execute_mainblock_internal(), and qexec_merge_listfiles().
|
static |
Definition at line 24055 of file query_executor.c.
References BH_CMP_ERROR, BH_EQ, BH_GT, BH_LT, cmp, pr_type::cmpval(), tp_domain::collation_id, DB_EQ, DB_GT, DB_IS_NULL, DB_LT, DB_TYPE_VARIABLE, qfile_tuple_value_position::dom, NULL, sort_list::pos_descr, S_ASC, S_DESC, sort_list::s_nulls, S_NULLS_FIRST, S_NULLS_LAST, sort_list::s_order, TP_DOMAIN_COLL_NORMAL, TP_DOMAIN_COLLATION_FLAG, TP_DOMAIN_TYPE, tp_value_compare(), and tp_domain::type.
Referenced by qexec_add_tuple_to_topn(), and qexec_topn_compare().
|
static |
Definition at line 24022 of file query_executor.c.
References BH_EQ, cmp, sort_list::next, NULL, sort_list::pos_descr, qfile_tuple_value_position::pos_no, and qexec_topn_cmpval().
Referenced by qexec_setup_topn_proc().
|
static |
Definition at line 24230 of file query_executor.c.
References ARG_FILE_LINE, assert, bh_destroy(), bh_to_sorted_array(), cleanup(), qfile_tuple_descriptor::clear_f_val_at_clone_decache, db_make_bigint(), db_private_free, DB_SIZEOF, DB_TYPE_BIGINT, DB_VALUE_TYPE, binary_heap::element_count, ER_ERROR_SEVERITY, ER_FAILED, ER_OUT_OF_VIRTUAL_MEMORY, er_set(), error(), qfile_tuple_descriptor::f_cnt, qfile_tuple_descriptor::f_valp, i, xasl_node::list_id, regu_variable_list_node::next, NO_ERROR, NULL, ordbynum_info::ordbynum_flag, xasl_node::ordbynum_flag, ordbynum_info::ordbynum_pos_cnt, ordbynum_info::ordbynum_pred, xasl_node::ordbynum_pred, ordbynum_info::ordbynum_val, xasl_node::ordbynum_val, xasl_node::outptr_list, pr_clone_value(), qdata_get_tuple_value_size_from_dbval(), qexec_clear_topn_tuple(), qexec_eval_ordbynum_pred(), QEXEC_GET_BH_TOPN_TUPLE, qfile_close_list(), qfile_generate_tuple_into_list(), QFILE_TUPLE_LENGTH_SIZE, REGU_VARIABLE_HIDDEN_COLUMN, REGU_VARIABLE_IS_FLAGED(), T_NORMAL, qfile_list_id::tpl_descr, qfile_tuple_descriptor::tpl_size, qfile_tuple_value_type_list::type_cnt, qfile_list_id::type_list, TYPE_ORDERBY_NUM, V_ERROR, V_FALSE, V_TRUE, valptr_list_node::valptrp, regu_variable_list_node::value, and ordbynum_info::xasl_state.
Referenced by qexec_end_one_iteration(), and qexec_orderby_distinct().
|
static |
Definition at line 9477 of file query_executor.c.
References assert, heap_scancache::m_index_stats, and NULL.
Referenced by qexec_process_unique_stats(), and qexec_upddel_setup_current_class().
|
static |
Definition at line 17091 of file query_executor.c.
References xasl_node::connect_by, ER_FAILED, eval_pred(), connectby_proc_node::input_list_id, NO_ERROR, NULL, xasl_node::outptr_list, xasl_node::proc, qdata_copy_valptr_list_to_tuple(), qexec_insert_tuple_into_list(), qfile_add_tuple_to_list(), connectby_proc_node::single_table_opt, connectby_proc_node::start_with_list_id, connectby_proc_node::start_with_pred, qfile_tuple_record::tpl, V_ERROR, V_TRUE, V_UNKNOWN, and xasl_state::vd.
Referenced by qexec_intprt_fnc().
|
static |
Definition at line 987 of file query_executor.c.
References assert, xasl_node::buildlist, BUILDLIST_PROC, db_get_oid(), db_get_set(), DB_IS_NULL, db_seq_get(), DB_TYPE_OID, DB_TYPE_VOBJ, DB_VALUE_DOMAIN_TYPE, EH_ERROR_OCCURRED, EH_KEY_FOUND, EH_KEY_NOTFOUND, ehash_insert(), ehash_search(), er_errid(), ER_FAILED, fetch_peek_dbval(), GOTO_EXIT_ON_ERROR, regu_variable_list_node::next, NO_ERROR, NULL, xasl_node::outptr_list, pr_clear_value(), xasl_node::proc, SAFE_COPY_OID, xasl_node::type, valptr_list_node::valptrp, regu_variable_list_node::value, and xasl_state::vd.
Referenced by qexec_end_one_iteration().
|
static |
Definition at line 23287 of file query_executor.c.
References hybrid_node::cls_node, cubquery::upddel_mvcc_cond_reeval::cls_oid, cls_spec_node::cls_oid, ER_FAILED, cubquery::upddel_mvcc_cond_reeval::init(), access_spec_node::next, NO_ERROR, NULL, OID_EQ, access_spec_node::s, xasl_node::scan_ptr, and xasl_node::spec_list.
Referenced by qexec_execute_delete(), and qexec_execute_update().
|
static |
Definition at line 23327 of file query_executor.c.
References BTREE_IS_MULTI_ROW_OP, or_partition::class_hfid, upddel_class_info::class_hfid, upddel_class_info_internal::class_hfid, or_partition::class_oid, upddel_class_info::class_oid, upddel_class_info_internal::class_oid, upddel_class_info_internal::context, COPY_OID, pruning_context::count, ER_FAILED, error(), upddel_class_info::has_uniques, i, upddel_class_info::lob_attr_ids, upddel_class_info_internal::lob_attr_ids, locator_end_force_scan_cache(), locator_get_partition_scancache(), locator_start_force_scan_cache(), logtb_get_mvcc_snapshot(), upddel_class_info_internal::m_inited_scancache, upddel_class_info_internal::m_scancache, upddel_class_info_internal::m_unique_stats, heap_scancache::mvcc_snapshot, upddel_class_info_internal::needs_pruning, NO_ERROR, NULL, upddel_class_info::num_lob_attrs, upddel_class_info_internal::num_lob_attrs, upddel_class_info::num_subclasses, OID_EQ, pruning_context::partitions, upddel_class_info_internal::prev_class_oid, qexec_update_btree_unique_stats_info(), pruning_scan_cache::scan_cache, upddel_class_info_internal::scan_cache, and upddel_class_info_internal::subclass_idx.
Referenced by qexec_execute_delete(), and qexec_execute_update().
|
static |
Definition at line 19087 of file query_executor.c.
References ARG_FILE_LINE, assert, BUILDLIST_PROC, cubregex::count(), db_private_alloc, db_private_free_and_init, ER_ERROR_SEVERITY, ER_FAILED, ER_OUT_OF_VIRTUAL_MEMORY, er_set(), error(), i, multi_range_opt::is_desc_order, regu_variable_list_node::next, sort_list::next, NO_ERROR, NULL, multi_range_opt::num_attrs, xasl_node::option, xasl_node::orderby_list, xasl_node::outptr_list, sort_list::pos_descr, qfile_tuple_value_position::pos_no, Q_DISTINCT, query_multi_range_opt_check_specs(), REGU_VARIABLE_HIDDEN_COLUMN, REGU_VARIABLE_IS_FLAGED(), access_spec_node::s, S_DESC, sort_list::s_order, xasl_node::scan_ptr, multi_range_opt::sort_att_idx, xasl_node::spec_list, xasl_node::type, TYPE_ATTR_ID, TYPE_CONSTANT, multi_range_opt::use, valptr_list_node::valptrp, regu_variable_list_node::value, XASL_SET_FLAG, XASL_SKIP_ORDERBY_LIST, and XASL_USES_MRO.
Referenced by qexec_execute_mainblock_internal().
|
static |
Definition at line 19242 of file query_executor.c.
References access_spec_node::access, ACCESS_METHOD_INDEX, access_spec_node::next, NULL, access_spec_node::s, S_INDX_SCAN, xasl_node::scan_ptr, xasl_node::spec_list, TARGET_CLASS, and access_spec_node::type.
Referenced by query_multi_range_opt_check_set_sort_col().
|
static |
Definition at line 15017 of file query_executor.c.
References NULL, and replace_null_dbval().
Referenced by replace_null_dbval().
|
static |
Definition at line 15054 of file query_executor.c.
References NULL, replace_null_arith(), TYPE_DBVAL, TYPE_INARITH, and TYPE_OUTARITH.
Referenced by replace_null_arith().