CUBRID Engine
latest
|
Go to the source code of this file.
Typedefs | |
typedef int( | PT_DO_FUNC) (PARSER_CONTEXT *, PT_NODE *) |
Variables | |
bool | do_Trigger_involved |
typedef int( PT_DO_FUNC) (PARSER_CONTEXT *, PT_NODE *) |
Definition at line 57 of file execute_statement.h.
Definition at line 13810 of file execute_statement.c.
References db_get_class_name(), and db_make_string().
Definition at line 13841 of file execute_statement.c.
References db_make_null(), and db_value_print().
int do_alter | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement | ||
) |
Definition at line 1626 of file execute_schema.c.
References pt_statement_info::alter, assert, CHECK_MODIFICATION_ERROR, pt_alter_info::code, do_alter_change_auto_increment(), do_alter_change_col_comment(), do_alter_change_default_cs_coll(), do_alter_change_owner(), do_alter_change_tbl_comment(), do_alter_clause_add_index(), do_alter_clause_change_attribute(), do_alter_clause_drop_index(), do_alter_clause_rename_entity(), do_alter_one_clause_with_template(), do_rollback(), er_errid(), ER_LK_UNILATERALLY_ABORTED, parser_node::info, parser_node::next, NO_ERROR, NULL, PT_ADD_INDEX_CLAUSE, PT_CHANGE_ATTR, PT_CHANGE_AUTO_INCREMENT, PT_CHANGE_COLLATION, PT_CHANGE_COLUMN_COMMENT, PT_CHANGE_OWNER, PT_CHANGE_TABLE_COMMENT, pt_compile(), PT_DROP_INDEX_CLAUSE, pt_has_error, PT_RENAME_ENTITY, pt_report_to_ersys_with_statement(), PT_SEMANTIC, tran_abort_upto_system_savepoint(), tran_system_savepoint(), and UNIQUE_SAVEPOINT_MULTIPLE_ALTER.
Referenced by do_execute_statement(), and do_statement().
int do_alter_index | ( | PARSER_CONTEXT * | parser, |
const PT_NODE * | statement | ||
) |
Definition at line 3621 of file execute_schema.c.
References CHECK_MODIFICATION_ERROR, pt_index_info::code, do_alter_index_comment(), do_alter_index_rebuild(), do_alter_index_status(), ER_FAILED, error(), pt_statement_info::index, parser_node::info, NO_ERROR, PT_CHANGE_INDEX_COMMENT, PT_CHANGE_INDEX_STATUS, and PT_REBUILD_INDEX.
Referenced by do_execute_statement(), and do_statement().
int do_alter_serial | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement | ||
) |
Definition at line 2225 of file execute_statement.c.
References ARG_FILE_LINE, assert, au_check_serial_authorization(), AU_DISABLE, AU_ENABLE, au_fetch_instance_force(), AU_FETCH_WRITE, CHECK_MODIFICATION_ERROR, check_serial_invariants(), pt_serial_info::comment, CT_SERIAL_NAME, pt_value_info::data_value, db_abs_dbval(), db_get(), db_get_int(), DB_IS_NULL, db_make_int(), db_make_null(), db_make_string(), DB_MAX_NUMERIC_PRECISION, DB_SERIAL_MAX, DB_SERIAL_MIN, DB_TYPE_NUMERIC, db_value_clone(), db_value_domain_init(), dbt_abort_object(), dbt_edit_object(), dbt_finish_object(), dbt_put_internal(), do_get_serial_obj_id(), er_clear(), er_errid(), ER_ERROR_SEVERITY, ER_INVALID_SERIAL_VALUE, ER_IT_DATA_OVERFLOW, ER_QPROC_CANNOT_UPDATE_SERIAL, ER_QPROC_DB_SERIAL_NOT_FOUND, ER_QPROC_SERIAL_NOT_FOUND, ER_QPROC_SERIAL_RANGE_OVERFLOW, er_set(), error(), pt_data_value::i, parser_node::info, initialize_serial_invariant(), INTL_CODESET_ISO88591, LC_FETCH_MVCC_VERSION, MAX_SERIAL_INVARIANT, MSGCAT_RUNTIME_INVALID_AUTO_INCREMENT_ALTER, MSGCAT_RUNTIME_RT_SERIAL_ALTER_NOT_ALLOWED, MSGCAT_RUNTIME_RT_SERIAL_NOT_DEFINED, MSGCAT_SEMANTIC_SERIAL_CACHED_NUM_INVALID_RANGE, MSGCAT_SEMANTIC_SERIAL_INC_VAL_INVALID, MSGCAT_SEMANTIC_SERIAL_INC_VAL_ZERO, MSGCAT_SEMANTIC_SERIAL_MAX_VAL_INVALID, MSGCAT_SEMANTIC_SERIAL_MAX_VAL_OVERFLOW, MSGCAT_SEMANTIC_SERIAL_MIN_VAL_INVALID, MSGCAT_SEMANTIC_SERIAL_MIN_VAL_UNDERFLOW, MSGCAT_SEMANTIC_SERIAL_START_VAL_INVALID, MSGCAT_SET_PARSER_RUNTIME, MSGCAT_SET_PARSER_SEMANTIC, NO_ERROR, parser_node::node_type, NULL, numeric_coerce_string_to_num(), numeric_db_value_coerce_to_num(), numeric_db_value_compare(), numeric_db_value_mul(), numeric_db_value_sub(), OID_ISNULL, OID_SET_NULL, pr_clear_value(), PT_ERRORmf, PT_GE, PT_LE, PT_LT, PT_NE, PT_NODE_SR_CACHED_NUM_VAL, PT_NODE_SR_CYCLIC, PT_NODE_SR_INCREMENT_VAL, PT_NODE_SR_MAX_VAL, PT_NODE_SR_MIN_VAL, PT_NODE_SR_NAME, PT_NODE_SR_NO_CACHE, PT_NODE_SR_NO_CYCLIC, PT_NODE_SR_NO_MAX, PT_NODE_SR_NO_MIN, PT_NODE_SR_START_VAL, PT_TYPE_INTEGER, PT_VALUE, PT_VALUE_GET_BYTES, pt_value_to_db(), pt_statement_info::serial, SERIAL_ATTR_CACHED_NUM, SERIAL_ATTR_CLASS_NAME, SERIAL_ATTR_COMMENT, SERIAL_ATTR_CURRENT_VAL, SERIAL_ATTR_CYCLIC, SERIAL_ATTR_INCREMENT_VAL, SERIAL_ATTR_MAX_VAL, SERIAL_ATTR_MIN_VAL, SERIAL_ATTR_STARTED, serial_decache(), sm_find_class(), strlen, parser_node::type_enum, pt_statement_info::value, ws_decache(), and WS_ISDIRTY.
Referenced by do_execute_statement(), and do_statement().
int do_alter_trigger | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement | ||
) |
Definition at line 6398 of file execute_statement.c.
References pt_statement_info::alter_trigger, assert, ASSERT_ERROR, ASSERT_ERROR_AND_SET, au_change_trigger_owner_method(), CHECK_MODIFICATION_ERROR, tr_trigger::class_mop, cleanup(), pt_alter_trigger_info::comment, convert_misc_to_tr_status(), convert_speclist_to_objlist(), cubregex::count(), DB_FETCH_SCAN, db_get_error(), db_make_null(), db_make_string(), DB_TYPE_ERROR, DB_VALUE_TYPE, er_errid(), ER_LK_UNILATERALLY_ABORTED, error(), get_priority(), parser_node::info, locator_fetch_class(), locator_flush_instance(), ml_ext_free(), pt_statement_info::name, NO_ERROR, NULL, pt_name_info::original, pr_clear_value(), PT_ACTIVE, PT_INACTIVE, PT_VALUE, TM_TRAN_ISOLATION, tr_check_authorization(), TR_LOWEST_PRIORITY, tr_map_trigger(), tr_set_comment(), tr_set_priority(), tr_set_status(), TR_STATUS_INVALID, tran_abort_upto_system_savepoint(), TRAN_REP_READ, tran_system_savepoint(), pt_trigger_spec_list_info::trigger_name_list, pt_alter_trigger_info::trigger_owner, pt_alter_trigger_info::trigger_priority, pt_alter_trigger_info::trigger_spec_list, pt_statement_info::trigger_spec_list, pt_alter_trigger_info::trigger_status, and UNIQUE_SAVEPOINT_ALTER_TRIGGER.
Referenced by do_execute_statement(), and do_statement().
int do_alter_user | ( | const PARSER_CONTEXT * | parser, |
const PT_NODE * | statement | ||
) |
Definition at line 2194 of file execute_schema.c.
References pt_statement_info::alter_user, ARG_FILE_LINE, assert, au_set_password(), au_set_user_comment(), CHECK_MODIFICATION_ERROR, pt_alter_user_info::comment, db_find_user(), ER_AU_INVALID_USER, er_errid(), ER_IS_ABORTED_DUE_TO_DEADLOCK, ER_OBJ_INVALID_ARGUMENTS, er_set(), ER_WARNING_SEVERITY, error(), GET_NAME, GET_STRING, parser_node::info, IS_NAME, IS_STRING, NO_ERROR, parser_node::node_type, NULL, pt_alter_user_info::password, PT_VALUE, PT_VALUE_GET_BYTES, tran_abort_upto_system_savepoint(), tran_system_savepoint(), UNIQUE_SAVEPOINT_ALTER_USER_ENTITY, and pt_alter_user_info::user_name.
Referenced by do_execute_statement(), and do_statement().
int do_attach | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement | ||
) |
Definition at line 4396 of file execute_statement.c.
References pt_statement_info::attach, db_2pc_attach_transaction(), ER_GENERIC_ERROR, parser_node::info, parser_node::node_type, PT_2PC_ATTACH, pt_has_error, and pt_attach_info::trans_id.
Referenced by do_execute_statement(), and do_statement().
int do_call_method | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement | ||
) |
Definition at line 13753 of file execute_statement.c.
References ARG_FILE_LINE, call_method(), er_errid(), ER_OBJ_INVALID_ARGUMENTS, er_set(), ER_WARNING_SEVERITY, parser_node::info, jsp_call_stored_procedure(), pt_statement_info::method_call, pt_method_call_info::method_name, pt_statement_info::name, parser_node::node_type, pt_method_call_info::on_call_target, pt_name_info::original, and PT_NAME.
Referenced by do_execute_statement(), do_statement(), and pt_evaluate_tree_internal().
int do_change_auto_increment_serial | ( | PARSER_CONTEXT *const | parser, |
MOP | serial_obj, | ||
PT_NODE * | new_cur_val | ||
) |
Definition at line 1029 of file execute_statement.c.
References assert, cmp, db_get(), db_get_int(), db_make_int(), db_make_null(), DB_MAX_NUMERIC_PRECISION, DB_TYPE_NUMERIC, db_value_clear(), db_value_domain_init(), dbt_abort_object(), dbt_edit_object(), dbt_finish_object(), dbt_put_internal(), ER_AUTO_INCREMENT_NEWVAL_MUST_LT_MAXVAL, er_errid(), ER_OBJ_INVALID_ARGUMENTS, ERROR0, locator_flush_instance(), NO_ERROR, NULL, numeric_db_value_coerce_to_num(), numeric_db_value_compare(), pt_value_to_db(), SERIAL_ATTR_CURRENT_VAL, SERIAL_ATTR_MAX_VAL, SERIAL_ATTR_MIN_VAL, and SERIAL_ATTR_STARTED.
Referenced by do_alter_change_auto_increment().
int do_check_delete_trigger | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement, | ||
PT_DO_FUNC * | do_func | ||
) |
Definition at line 5940 of file execute_statement.c.
References ARG_FILE_LINE, check_trigger(), pt_delete_info::del_stmt_list, pt_statement_info::delete_, do_check_for_empty_classes_in_delete(), ER_BLOCK_NOWHERE_STMT, ER_ERROR_SEVERITY, er_set(), error(), parser_node::flag, parser_node::info, parser_node::next, NO_ERROR, NULL, prm_get_bool_value(), PRM_ID_BLOCK_NOWHERE_STATEMENT, pt_delete_info::search_cond, TR_EVENT_STATEMENT_DELETE, and parser_node::use_auto_commit.
Referenced by do_execute_statement(), and do_statement().
int do_check_insert_trigger | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement, | ||
PT_DO_FUNC * | do_func | ||
) |
Definition at line 6019 of file execute_statement.c.
References check_trigger(), parser_node::flag, TR_EVENT_STATEMENT_INSERT, and parser_node::use_auto_commit.
Referenced by do_execute_statement(), and do_statement().
int do_check_internal_statements | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement, | ||
PT_DO_FUNC | do_func | ||
) |
Definition at line 3854 of file execute_statement.c.
References ARG_FILE_LINE, Au_dba_user, AU_DISABLE, AU_ENABLE, Au_user, db_compile_and_execute_local(), er_log_debug, error(), parser_node::etc, parser_node::info, parser_node::next, NO_ERROR, NULL, parent_parser, parser, parser_print_tree(), parser_walk_tree(), pt_bind_param_node(), pt_value_info::text, tran_abort_upto_system_savepoint(), tran_system_savepoint(), UNIQUE_SAVEPOINT_EXTERNAL_STATEMENT, and pt_statement_info::value.
Referenced by check_merge_trigger(), check_trigger(), do_execute_statement(), and do_statement().
int do_check_merge_trigger | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement, | ||
PT_DO_FUNC * | do_func | ||
) |
Definition at line 15245 of file execute_statement.c.
References ARG_FILE_LINE, check_merge_trigger(), ER_BLOCK_NOWHERE_STMT, ER_ERROR_SEVERITY, er_set(), err, parser_node::flag, parser_node::info, pt_statement_info::merge, NULL, prm_get_bool_value(), PRM_ID_BLOCK_NOWHERE_STATEMENT, pt_merge_info::search_cond, and parser_node::use_auto_commit.
Referenced by do_execute_statement(), and do_statement().
int do_check_update_trigger | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement, | ||
PT_DO_FUNC * | do_func | ||
) |
Definition at line 6106 of file execute_statement.c.
References ARG_FILE_LINE, check_trigger(), ER_BLOCK_NOWHERE_STMT, ER_ERROR_SEVERITY, er_set(), err, parser_node::flag, parser_node::info, NULL, prm_get_bool_value(), PRM_ID_BLOCK_NOWHERE_STATEMENT, pt_update_info::search_cond, TR_EVENT_STATEMENT_UPDATE, pt_statement_info::update, and parser_node::use_auto_commit.
Referenced by do_execute_statement(), and do_statement().
int do_commit | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement | ||
) |
Definition at line 4435 of file execute_statement.c.
References pt_statement_info::commit_work, db_update_row_count_cache(), parser_node::info, pt_commit_work_info::retain_lock, and tran_commit().
Referenced by do_execute_statement(), and do_statement().
int do_create_auto_increment_serial | ( | PARSER_CONTEXT * | parser, |
MOP * | serial_object, | ||
const char * | class_name, | ||
PT_NODE * | att | ||
) |
Definition at line 1766 of file execute_statement.c.
References parser_node::alias_print, ARG_FILE_LINE, assert_release, pt_statement_info::attr_def, pt_attr_def_info::attr_name, pt_attr_def_info::auto_increment, pt_statement_info::auto_increment, AUTO_INCREMENT_SERIAL_NAME_EXTRA_LENGTH, CT_SERIAL_NAME, pt_statement_info::data_type, parser_node::data_type, DB_BIGINT_MAX, db_get_int(), DB_INT16_MAX, DB_INT32_MAX, DB_LT, db_make_bigint(), db_make_int(), db_make_null(), DB_MAX_NUMERIC_PRECISION, DB_SERIAL_MAX, DB_TYPE_NUMERIC, db_value_clone(), db_value_domain_init(), do_create_serial_internal(), do_get_serial_obj_id(), ER_AUTO_INCREMENT_SERIAL_ALREADY_EXIST, ER_AUTO_INCREMENT_STARTVAL_MUST_LT_MAXVAL, er_errid(), ER_ERROR_SEVERITY, ER_INCREMENT_VALUE_CANNOT_BE_ZERO, ER_INVALID_SERIAL_VALUE, ER_OUT_OF_VIRTUAL_MEMORY, ER_QPROC_DB_SERIAL_NOT_FOUND, er_set(), error(), free_and_init, i, pt_auto_increment_info::increment_val, parser_node::info, INTL_CODESET_ISO88591, pt_statement_info::name, NO_ERROR, NULL, numeric_coerce_string_to_num(), numeric_db_value_coerce_to_num(), numeric_db_value_compare(), pt_name_info::original, p, pr_clear_value(), pt_data_type_info::precision, PT_TYPE_BIGINT, PT_TYPE_INTEGER, PT_TYPE_NUMERIC, PT_TYPE_SMALLINT, pt_value_to_db(), SET_AUTO_INCREMENT_SERIAL_NAME, sm_downcase_name(), sm_find_class(), SM_MAX_IDENTIFIER_LENGTH, pt_auto_increment_info::start_val, strlen, tp_value_compare(), and parser_node::type_enum.
Referenced by do_add_attribute(), and do_change_att_schema_only().
int do_create_index | ( | PARSER_CONTEXT * | parser, |
const PT_NODE * | statement | ||
) |
Definition at line 2946 of file execute_schema.c.
References assert, CHECK_MODIFICATION_ERROR, pt_index_info::column_names, pt_index_info::comment, create_or_drop_index_helper(), db_find_class(), DO_INDEX_CREATE, pt_spec_info::entity_name, er_errid(), error(), pt_index_info::func_no_args, pt_index_info::func_pos, pt_index_info::function_expr, ib_thread_count, pt_index_info::ib_threads, pt_statement_info::index, pt_index_info::index_name, pt_index_info::index_status, pt_index_info::indexed_class, parser_node::info, pt_statement_info::name, NO_ERROR, NULL, pt_name_info::original, pt_index_info::prefix_length, pt_index_info::reverse, SM_ONLINE_INDEX_BUILDING_IN_PROGRESS, pt_statement_info::spec, pt_index_info::unique, and pt_index_info::where.
Referenced by do_alter_clause_add_index(), do_create_entity(), do_execute_statement(), and do_statement().
int do_create_serial | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement | ||
) |
Definition at line 1280 of file execute_statement.c.
References ARG_FILE_LINE, assert, AU_DISABLE, AU_ENABLE, CHECK_MODIFICATION_ERROR, check_serial_invariants(), pt_serial_info::comment, CT_SERIAL_NAME, pt_value_info::data_value, db_abs_dbval(), db_get_int(), db_make_int(), db_make_null(), DB_MAX_NUMERIC_PRECISION, DB_SERIAL_MAX, DB_SERIAL_MIN, DB_TYPE_NUMERIC, db_value_clone(), db_value_domain_init(), do_create_serial_internal(), do_get_serial_obj_id(), er_clear(), er_errid(), ER_ERROR_SEVERITY, ER_FAILED, ER_INVALID_SERIAL_VALUE, ER_IT_DATA_OVERFLOW, ER_OUT_OF_VIRTUAL_MEMORY, ER_QPROC_DB_SERIAL_NOT_FOUND, ER_QPROC_SERIAL_ALREADY_EXIST, ER_QPROC_SERIAL_RANGE_OVERFLOW, er_set(), error(), free_and_init, pt_data_value::i, parser_node::info, initialize_serial_invariant(), INTL_CODESET_ISO88591, intl_identifier_lower(), intl_identifier_lower_string_size(), MAX_SERIAL_INVARIANT, MSGCAT_SEMANTIC_SERIAL_ALREADY_EXIST, MSGCAT_SEMANTIC_SERIAL_CACHED_NUM_INVALID_RANGE, MSGCAT_SEMANTIC_SERIAL_INC_VAL_INVALID, MSGCAT_SEMANTIC_SERIAL_INC_VAL_ZERO, MSGCAT_SEMANTIC_SERIAL_MAX_VAL_INVALID, MSGCAT_SEMANTIC_SERIAL_MAX_VAL_OVERFLOW, MSGCAT_SEMANTIC_SERIAL_MIN_VAL_INVALID, MSGCAT_SEMANTIC_SERIAL_MIN_VAL_UNDERFLOW, MSGCAT_SEMANTIC_SERIAL_START_VAL_INVALID, MSGCAT_SET_PARSER_SEMANTIC, NO_ERROR, parser_node::node_type, NULL, numeric_coerce_string_to_num(), numeric_db_value_coerce_to_num(), numeric_db_value_compare(), numeric_db_value_mul(), numeric_db_value_sub(), p, pr_clear_value(), PT_ERRORmf, PT_GE, PT_LE, PT_LT, PT_NE, PT_NODE_SR_CACHED_NUM_VAL, PT_NODE_SR_CYCLIC, PT_NODE_SR_INCREMENT_VAL, PT_NODE_SR_MAX_VAL, PT_NODE_SR_MIN_VAL, PT_NODE_SR_NAME, PT_NODE_SR_START_VAL, PT_TYPE_INTEGER, PT_VALUE, PT_VALUE_GET_BYTES, pt_value_to_db(), pt_statement_info::serial, sm_find_class(), strlen, parser_node::type_enum, and pt_statement_info::value.
Referenced by do_execute_statement(), and do_statement().
int do_create_trigger | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement | ||
) |
Definition at line 6199 of file execute_statement.c.
References ARG_FILE_LINE, assert, au_fetch_class(), AU_FETCH_READ, AU_SELECT, parser_varchar::bytes, CHECK_MODIFICATION_ERROR, pt_create_trigger_info::comment, pt_statement_info::create_trigger, pt_value_info::data_value, db_find_class(), db_get_attributes(), db_make_object(), db_value_create(), er_errid(), ER_ERROR_SEVERITY, ER_INVALID_PARTITION_REQUEST, ER_REGU_NOT_IMPLEMENTED, er_set(), ER_WARNING_SEVERITY, error(), parser_node::etc, get_activity_info(), get_priority(), parser_node::info, locator_all_flush(), NO_ERROR, parser_node::node_type, NULL, sm_class::partition, PT_NODE_ACTION, PT_NODE_ACTION_TIME, PT_NODE_COND, PT_NODE_COND_TIME, PT_NODE_TR_EVENT_TYPE, PT_NODE_TR_NAME, PT_NODE_TR_PRI, PT_NODE_TR_STATUS, PT_NODE_TR_TARGET, PT_TR_ATTR_NAME, PT_TR_TARGET_ATTR, PT_TR_TARGET_CLASS, PT_VALUE, rel_major_release_string(), pt_data_value::str, TM_TRAN_ISOLATION, tr_create_trigger(), TR_LOWEST_PRIORITY, TRAN_REP_READ, sm_class::users, and pt_statement_info::value.
Referenced by do_execute_statement(), and do_statement().
int do_create_user | ( | const PARSER_CONTEXT * | parser, |
const PT_NODE * | statement | ||
) |
Definition at line 1916 of file execute_schema.c.
References ARG_FILE_LINE, assert, AU_PUBLIC_USER_NAME, au_set_password(), au_set_user_comment(), CHECK_MODIFICATION_ERROR, pt_create_user_info::comment, pt_statement_info::create_user, db_add_member(), db_add_user(), db_find_user(), ER_AU_INVALID_USER, ER_AU_MEMBER_CAUSES_CYCLES, ER_AU_MISSING_OR_INVALID_USER, ER_AU_USER_EXISTS, er_errid(), ER_IS_ABORTED_DUE_TO_DEADLOCK, ER_OBJ_INVALID_ARGUMENTS, er_set(), ER_WARNING_SEVERITY, error(), GET_NAME, GET_STRING, pt_create_user_info::groups, parser_node::info, intl_identifier_casecmp(), IS_NAME, IS_STRING, pt_create_user_info::members, pt_statement_info::name, parser_node::next, NO_ERROR, parser_node::node_type, NULL, pt_name_info::original, pt_create_user_info::password, PT_NAME, PT_VALUE, PT_VALUE_GET_BYTES, tran_abort_upto_system_savepoint(), tran_system_savepoint(), UNIQUE_SAVEPOINT_CREATE_USER_ENTITY, and pt_create_user_info::user_name.
Referenced by do_execute_statement(), and do_statement().
int do_delete | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement | ||
) |
Definition at line 10013 of file execute_statement.c.
References AU_DISABLE, AU_ENABLE, parser_context::au_save, CHECK_MODIFICATION_ERROR, db_abort_to_savepoint(), pt_statement_info::delete_, delete_real_class(), delete_savepoint_number, ER_GENERIC_ERROR, ER_LK_UNILATERALLY_ABORTED, error(), parser_node::info, mq_generate_name(), parser_node::next, NO_ERROR, parser_node::node_type, NULL, PT_DELETE, pt_false_where(), PT_INTERNAL_ERROR, pt_delete_info::spec, and tran_system_savepoint().
Referenced by do_statement().
int do_drop | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement | ||
) |
Definition at line 2314 of file execute_schema.c.
References ARG_FILE_LINE, CHECK_MODIFICATION_ERROR, do_is_partitioned_subclass(), pt_statement_info::drop, drop_class_name(), er_errid(), ER_ERROR_SEVERITY, ER_INVALID_PARTITION_REQUEST, ER_LK_UNILATERALLY_ABORTED, er_set(), error(), pt_spec_info::flat_entity_list, parser_node::info, pt_drop_info::is_cascade_constraints, pt_statement_info::name, parser_node::next, NO_ERROR, NULL, pt_name_info::original, pt_statement_info::spec, pt_drop_info::spec_list, tran_abort_upto_system_savepoint(), tran_system_savepoint(), and UNIQUE_SAVEPOINT_DROP_ENTITY.
Referenced by do_execute_statement(), and do_statement().
int do_drop_index | ( | PARSER_CONTEXT * | parser, |
const PT_NODE * | statement | ||
) |
Definition at line 2991 of file execute_schema.c.
References assert, CHECK_MODIFICATION_ERROR, pt_index_info::column_names, create_or_drop_index_helper(), DB_CONSTRAINT_INDEX, db_find_class(), DO_INDEX_DROP, er_errid(), ER_SM_INVALID_DEF_CONSTRAINT_NAME_PARAMS, pt_spec_info::flat_entity_list, pt_index_info::func_no_args, pt_index_info::func_pos, pt_index_info::function_expr, get_index_type_qualifiers(), get_reverse_unique_index_type(), pt_statement_info::index, pt_index_info::index_name, pt_index_info::index_status, pt_index_info::indexed_class, parser_node::info, pt_statement_info::name, NO_ERROR, NULL, pt_name_info::original, pt_name_info::resolved, pt_index_info::reverse, pt_statement_info::spec, and pt_index_info::unique.
Referenced by do_execute_statement(), and do_statement().
int do_drop_serial | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement | ||
) |
Definition at line 2833 of file execute_statement.c.
References ARG_FILE_LINE, au_check_serial_authorization(), AU_DISABLE, AU_ENABLE, CHECK_MODIFICATION_ERROR, CT_SERIAL_NAME, db_drop(), db_get(), DB_IS_NULL, db_make_null(), do_get_serial_obj_id(), ER_ERROR_SEVERITY, ER_QPROC_CANNOT_UPDATE_SERIAL, ER_QPROC_DB_SERIAL_NOT_FOUND, ER_QPROC_SERIAL_NOT_FOUND, er_set(), error(), pt_serial_info::if_exists, parser_node::info, MSGCAT_RUNTIME_RT_SERIAL_ALTER_NOT_ALLOWED, MSGCAT_RUNTIME_RT_SERIAL_NOT_DEFINED, MSGCAT_RUNTIME_SERIAL_IS_AUTO_INCREMENT_OBJ, MSGCAT_SET_PARSER_RUNTIME, NO_ERROR, NULL, OID_ISNULL, OID_SET_NULL, pr_clear_value(), PT_ERRORmf, PT_NODE_SR_NAME, pt_statement_info::serial, SERIAL_ATTR_CLASS_NAME, serial_decache(), and sm_find_class().
Referenced by do_execute_statement(), and do_statement().
int do_drop_session_variables | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement | ||
) |
Definition at line 15180 of file execute_statement.c.
References ARG_FILE_LINE, assert, cleanup(), cubregex::count(), csession_drop_session_variables(), pt_statement_info::drop_session_var, ER_ERROR_SEVERITY, ER_OUT_OF_VIRTUAL_MEMORY, er_set(), error(), free_and_init, i, parser_node::info, parser_node::next, NO_ERROR, parser_node::node_type, NULL, pr_clear_value(), pr_clone_value(), PT_DROP_SESSION_VARIABLES, pt_value_to_db(), and pt_drop_session_var_info::variables.
Referenced by do_execute_statement().
int do_drop_trigger | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement | ||
) |
Definition at line 6339 of file execute_statement.c.
References assert, CHECK_MODIFICATION_ERROR, convert_speclist_to_objlist(), pt_statement_info::drop_trigger, er_errid(), ER_TR_TRIGGER_NOT_FOUND, error(), parser_node::info, ml_ext_free(), db_objlist::next, NO_ERROR, NULL, db_objlist::op, tr_check_authorization(), tr_drop_trigger(), and pt_drop_trigger_info::trigger_spec_list.
Referenced by do_execute_statement(), and do_statement().
int do_drop_user | ( | const PARSER_CONTEXT * | parser, |
const PT_NODE * | statement | ||
) |
Definition at line 2136 of file execute_schema.c.
References ARG_FILE_LINE, assert, CHECK_MODIFICATION_ERROR, pt_statement_info::create_user, db_drop_user(), db_find_user_to_drop(), ER_AU_INVALID_USER, ER_IS_ABORTED_DUE_TO_DEADLOCK, ER_OBJ_INVALID_ARGUMENTS, er_set(), ER_WARNING_SEVERITY, error(), GET_NAME, parser_node::info, IS_NAME, NO_ERROR, NULL, tran_abort_upto_system_savepoint(), tran_system_savepoint(), UNIQUE_SAVEPOINT_DROP_USER_ENTITY, and pt_create_user_info::user_name.
Referenced by do_execute_statement(), and do_statement().
int do_drop_variable | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement | ||
) |
Definition at line 811 of file parse_evaluate.c.
References assert, pt_statement_info::drop_variable, parser_node::info, mht_rem(), MSGCAT_RUNTIME_VAR_NOT_DEFINED, MSGCAT_SET_PARSER_RUNTIME, pt_statement_info::name, parser_node::next, NO_ERROR, parser_node::node_type, NULL, pt_name_info::original, PT_DROP_VARIABLE, PT_ERRORmf, pt_free_label(), PT_NAME, and pt_drop_variable_info::var_names.
Referenced by do_execute_statement(), and do_statement().
int do_evaluate | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement | ||
) |
Definition at line 10671 of file execute_statement.c.
References db_make_null(), db_value_copy(), ER_GENERIC_ERROR, ER_PT_SEMANTIC, error(), parser_node::etc, pt_statement_info::evaluate, pt_evaluate_info::expression, parser_node::info, pt_evaluate_info::into_var, pt_statement_info::name, NO_ERROR, parser_node::node_type, NULL, pt_name_info::original, pr_clear_value(), pt_associate_label_with_value_check_reference(), pt_evaluate_tree(), pt_has_error, PT_NAME, pt_report_to_ersys(), and PT_SEMANTIC.
Referenced by do_execute_statement(), and do_statement().
int do_evaluate_default_expr | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | class_name | ||
) |
Definition at line 406 of file execute_statement.c.
References ARG_FILE_LINE, assert, assert_release, sm_class::attributes, au_fetch_class_force(), AU_FETCH_READ, 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_get_datetime(), db_get_user_and_host_name(), db_get_user_name(), DB_IS_NULL, db_make_datetime(), db_make_int(), db_make_null(), db_make_string(), db_make_time(), db_make_timestamp(), pt_name_info::db_object, db_timestamp_encode_sys(), db_to_char(), DB_TYPE_STRING, db_unix_timestamp(), db_value_clear(), db_value_put_encoded_date(), db_value_put_encoded_time(), DB_VALUE_TYPE, sm_default_value::default_expr, db_default_expr::default_expr_format, db_default_expr::default_expr_op, db_default_expr::default_expr_type, default_value, sm_attribute::default_value, sm_attribute::domain, DOMAIN_COMPATIBLE, error(), sm_attribute::header, parser_node::info, lang_set_flag_from_lang(), pt_statement_info::name, db_value::need_clear, sm_component::next, NO_ERROR, parser_node::node_type, NULL, pr_clear_value(), pr_clone_value(), prm_get_string_value(), PRM_ID_INTL_DATE_LANG, PT_NAME, strlen, parser_context::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(), 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(), and sm_default_value::value.
Referenced by do_prepare_merge(), and insert_local().
int do_execute_delete | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement | ||
) |
Definition at line 10416 of file execute_statement.c.
References assert, AU_RESTORE, AU_SAVE_AND_DISABLE, AU_SAVE_AND_ENABLE, parser_context::auto_param_count, CHECK_MODIFICATION_ERROR, cursor_free_self_list_id, db_abort_to_savepoint(), db_is_vclass(), pt_name_info::db_object, DEFAULT_EXEC_MODE, pt_statement_info::delete_, delete_list_by_oids(), delete_savepoint_number, do_send_plan_trace_to_session(), do_set_trace_to_query_flag(), ER_GENERIC_ERROR, ER_LK_UNILATERALLY_ABORTED, err, execute_query(), EXECUTE_QUERY_WITH_COMMIT, pt_spec_info::flag, parser_context::flag, pt_spec_info::flat_entity_list, parser_context::host_var_count, parser_context::host_variables, if(), parser_node::info, parser_context::is_auto_commit, parser_context::is_xasl_pinned_reference, mq_generate_name(), pt_statement_info::name, parser_node::next, NO_ERROR, NOT_FROM_RESULT_CACHE, NULL, pt_name_info::original, prm_get_bool_value(), PRM_ID_QUERY_TRACE, pt_end_query(), PT_HINT_LK_TIMEOUT, PT_IS_HINT_NODE, PT_SPEC_FLAG_DELETE, parser_context::query_id, parser_context::query_trace, RESULT_CACHE_INHIBITED, pt_delete_info::server_delete, sm_decache_instances_after_query_executed_with_commit(), sm_flush_and_decache_objects(), sm_flush_objects(), pt_delete_info::spec, pt_statement_info::spec, TM_TRAN_ISOLATION, TM_TRAN_WAIT_MSECS, TRAN_AUTO_COMMIT, tran_flush_to_commit(), TRAN_REP_READ, tran_reset_wait_times(), tran_system_savepoint(), tran_was_latest_query_committed(), qfile_list_id::tuple_cnt, pt_delete_info::waitsecs_hint, and XASL_CACHE_PINNED_REFERENCE.
Referenced by do_execute_statement().
int do_execute_do | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement | ||
) |
Definition at line 15015 of file execute_statement.c.
References assert, AU_DISABLE, AU_ENABLE, parser_context::au_save, parser_context::auto_param_count, xasl_stream::buffer, xasl_stream::buffer_size, DEFAULT_EXEC_MODE, do_send_plan_trace_to_session(), do_set_trace_to_query_flag(), er_errid(), error(), parser_node::etc, parser_context::flag, free_and_init, parser_context::host_var_count, parser_context::host_variables, init_xasl_stream(), parser_context::is_auto_commit, NO_ERROR, NOT_FROM_RESULT_CACHE, NULL, parser_generate_do_stmt_xasl(), prepare_and_execute_query(), prm_get_bool_value(), PRM_ID_QUERY_TRACE, pt_enter_packing_buf(), PT_EXECUTION, pt_exit_packing_buf(), pt_has_error, pt_null_etc(), pt_report_to_ersys(), parser_context::query_id, parser_context::query_trace, RESULT_CACHE_INHIBITED, TRAN_AUTO_COMMIT, and xts_map_xasl_to_stream().
Referenced by do_execute_statement(), and do_statement().
int do_execute_insert | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement | ||
) |
Definition at line 13463 of file execute_statement.c.
References assert, parser_context::auto_param_count, call_method(), CHECK_MODIFICATION_ERROR, cursor_free_self_list_id, pt_name_info::db_object, DEFAULT_EXEC_MODE, do_insert(), do_send_plan_trace_to_session(), do_set_trace_to_query_flag(), err, parser_node::etc, execute_query(), EXECUTE_QUERY_WITH_COMMIT, parser_node::flag, parser_context::flag, pt_spec_info::flat_entity_list, parser_context::host_var_count, parser_context::host_variables, if(), parser_node::info, pt_statement_info::insert, parser_context::is_auto_commit, parser_context::is_xasl_pinned_reference, pt_statement_info::name, NO_ERROR, NOT_FROM_RESULT_CACHE, NULL, prm_get_bool_value(), PRM_ID_QUERY_TRACE, pt_end_query(), qo_need_skip_execution(), parser_context::query_id, parser_context::query_trace, RESULT_CACHE_INHIBITED, RETURN_GENERATED_KEYS, parser_context::return_generated_keys, pt_insert_info::spec, pt_statement_info::spec, TRAN_AUTO_COMMIT, tran_flush_to_commit(), qfile_list_id::tuple_cnt, parser_node::use_auto_commit, ws_need_flush(), XASL_CACHE_PINNED_REFERENCE, and parser_node::xasl_id.
Referenced by do_execute_statement().
int do_execute_merge | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement | ||
) |
Definition at line 16244 of file execute_statement.c.
References parser_context::abort, assert, pt_merge_info::assignment, AU_RESTORE, AU_SAVE_AND_DISABLE, AU_SAVE_AND_ENABLE, parser_context::auto_param_count, CHECK_MODIFICATION_ERROR, parser_node::column_number, cursor_free_self_list_id, db_abort_to_savepoint(), DB_FETCH_CLREAD_INSTWRITE, db_is_vclass(), pt_name_info::db_object, DEFAULT_EXEC_MODE, pt_merge_info::do_class_attrs, do_select(), er_errid(), ER_FAILED, ER_GENERIC_ERROR, ER_LK_UNILATERALLY_ABORTED, er_msg(), err, error(), parser_node::etc, execute_query(), EXECUTE_QUERY_WITH_COMMIT, parser_node::flag, parser_context::flag, pt_merge_info::flags, pt_spec_info::flat_entity_list, pt_merge_info::hint, parser_context::host_var_count, parser_context::host_variables, parser_node::info, pt_merge_info::insert, insert_subquery_results(), pt_merge_info::into, parser_context::is_auto_commit, parser_context::is_xasl_pinned_reference, parser_node::line_number, pt_node_list_info::list, pt_node_list_info::list_type, locator_fetch_class(), pt_statement_info::merge, merge_savepoint_number, mq_generate_name(), mq_translate(), pt_statement_info::name, NO_ERROR, pt_statement_info::node_list, NOT_FROM_RESULT_CACHE, NULL, obt_begin_insert_values(), parser_free_tree(), pt_end_query(), pt_has_error, PT_HINT_LK_TIMEOUT, PT_IS_HINT_NODE, PT_IS_SUBQUERY, PT_MERGE_INFO_INSERT_ONLY, PT_MERGE_INFO_SERVER_OP, pt_record_error(), pt_to_merge_insert_query(), qmgr_end_query(), parser_context::query_id, RESULT_CACHE_INHIBITED, sm_decache_instances_after_query_executed_with_commit(), sm_flush_and_decache_objects(), sm_flush_objects(), pt_statement_info::spec, parser_context::statement_number, TM_TRAN_WAIT_MSECS, TRAN_AUTO_COMMIT, tran_flush_to_commit(), tran_reset_wait_times(), tran_system_savepoint(), tran_was_latest_query_committed(), tran_was_latest_query_ended(), qfile_list_id::tuple_cnt, pt_merge_info::update, update_class_attributes(), update_objs_for_list_file(), parser_node::use_auto_commit, pt_merge_info::value_clauses, pt_merge_info::waitsecs_hint, ws_need_flush(), XASL_CACHE_PINNED_REFERENCE, and parser_node::xasl_id.
Referenced by do_execute_statement().
int do_execute_select | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement | ||
) |
Definition at line 14441 of file execute_statement.c.
References parser_context::abort, assert, AU_RESTORE, AU_SAVE_AND_ENABLE, parser_context::auto_param_count, parser_node::cache_time, CACHE_TIME_EQ, CACHE_TIME_RESET, parser_node::clt_cache_check, parser_node::clt_cache_reusable, db_value_clear(), db_value_copy(), DEFAULT_EXEC_MODE, pt_query_info::do_cache, pt_query_info::do_not_cache, do_send_plan_trace_to_session(), do_set_trace_to_query_flag(), DONT_COLLECT_EXEC_STATS, parser_context::dont_collect_exec_stats, er_errid(), err, parser_node::etc, execute_query(), EXECUTE_QUERY_WITH_COMMIT, pt_query_info::flag, parser_node::flag, parser_context::flag, free_and_init, parser_context::host_var_count, parser_context::host_variables, i, parser_node::info, pt_query_info::into_list, parser_context::is_auto_commit, parser_context::is_holdable, parser_context::is_xasl_pinned_reference, locator_all_flush(), locator_assign_all_permanent_oids(), MSGCAT_RUNTIME_PARM_IS_NOT_SET, MSGCAT_SET_PARSER_RUNTIME, pt_statement_info::name, NO_ERROR, parser_node::node_type, NOT_FROM_RESULT_CACHE, NULL, pt_query_info::oids_included, pt_name_info::original, parser_walk_tree(), prm_get_bool_value(), PRM_ID_QUERY_TRACE, pt_associate_label_with_value_check_reference(), PT_ERRORmf, pt_flush_classes(), pt_get_one_tuple_from_list_id(), pt_length_of_list(), PT_NAME, pt_statement_info::query, parser_context::query_id, parser_context::query_trace, pt_query_info::reexecute, RESULT_CACHE_INHIBITED, RESULT_CACHE_REQUIRED, RESULT_HOLDABLE, parser_node::si_datetime, parser_node::si_tran_id, tm_Use_OID_preflush, TRAN_AUTO_COMMIT, parser_node::use_auto_commit, ws_has_updated(), ws_need_flush(), XASL_CACHE_PINNED_REFERENCE, and parser_node::xasl_id.
Referenced by do_execute_statement().
int do_execute_session_statement | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement | ||
) |
Definition at line 14294 of file execute_statement.c.
References parser_context::abort, ARG_FILE_LINE, assert, AU_RESTORE, AU_SAVE_AND_ENABLE, parser_context::auto_param_count, parser_node::cache_time, CACHE_TIME_EQ, CACHE_TIME_RESET, parser_node::clt_cache_check, parser_node::clt_cache_reusable, CUBRID_STMT_EXECUTE_PREPARE, cursor_close(), cursor_get_tuple_value_list(), cursor_next_tuple(), cursor_open(), DB_CURSOR_SUCCESS, db_value_clear(), db_value_copy(), DEFAULT_EXEC_MODE, do_send_plan_trace_to_session(), do_set_trace_to_query_flag(), er_errid(), ER_ERROR_SEVERITY, ER_FAILED, ER_OUT_OF_VIRTUAL_MEMORY, er_set(), err, parser_node::etc, pt_statement_info::execute, execute_query(), parser_node::flag, parser_context::flag, free_and_init, parser_context::host_var_count, parser_context::host_variables, i, parser_node::info, pt_execute_info::into_list, parser_context::is_auto_commit, parser_context::is_holdable, parser_context::is_xasl_pinned_reference, NO_ERROR, NULL, pt_execute_info::oids_included, parser_walk_tree(), prm_get_bool_value(), PRM_ID_QUERY_TRACE, pt_associate_label_with_value_check_reference(), pt_flush_classes(), pt_length_of_list(), PT_NAME, pt_node_to_cmd_type(), cursor_id::query_id, parser_context::query_id, parser_context::query_trace, RESULT_HOLDABLE, TRAN_AUTO_COMMIT, ws_has_updated(), XASL_CACHE_PINNED_REFERENCE, and parser_node::xasl_id.
Referenced by do_execute_statement().
int do_execute_statement | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement | ||
) |
Definition at line 3430 of file execute_statement.c.
References parser_node::alias_print, ARG_FILE_LINE, assert, db_set_read_fetch_instance_version(), db_set_suppress_repl_on_transaction(), do_alter(), do_alter_index(), do_alter_serial(), do_alter_trigger(), do_alter_user(), do_attach(), do_call_method(), do_check_delete_trigger(), do_check_insert_trigger(), do_check_internal_statements(), do_check_merge_trigger(), do_check_update_trigger(), do_commit(), do_create_entity(), do_create_index(), do_create_serial(), do_create_trigger(), do_create_user(), do_drop(), do_drop_index(), do_drop_serial(), do_drop_session_variables(), do_drop_trigger(), do_drop_user(), do_drop_variable(), do_evaluate(), do_execute_delete(), do_execute_do(), do_execute_insert(), do_execute_merge(), do_execute_select(), do_execute_session_statement(), do_execute_trigger(), do_execute_update(), do_get_optimization_param(), do_get_stats(), do_get_trigger(), do_get_xaction(), do_grant(), do_kill(), do_prepare_to_commit(), do_remove_trigger(), do_rename(), do_rename_trigger(), do_replicate_statement(), do_revoke(), do_rollback(), do_savepoint(), do_scope(), do_set_names(), do_set_optimization_param(), do_set_query_trace(), do_set_session_variables(), do_set_sys_params(), do_set_timezone(), do_set_trigger(), do_set_xaction(), do_statement(), do_Trigger_involved, do_truncate(), do_update_stats(), do_vacuum(), ER_BLOCK_DDL_STMT, er_errid(), ER_ERROR_SEVERITY, ER_FAILED, ER_GENERIC_ERROR, ER_LK_UNILATERALLY_ABORTED, ER_PT_UNKNOWN_STATEMENT, er_set(), err, error(), HA_DISABLED, is_stmt_based_repl_type(), jsp_alter_stored_procedure(), jsp_create_stored_procedure(), jsp_drop_stored_procedure(), LC_FETCH_DIRTY_VERSION, LC_FETCH_MVCC_VERSION, locator_all_flush(), parser_node::next, NO_ERROR, parser_node::node_type, NULL, parser, prm_get_bool_value(), PRM_ID_BLOCK_DDL_STATEMENT, PT_2PC_ATTACH, PT_ALTER, PT_ALTER_INDEX, PT_ALTER_SERIAL, PT_ALTER_STORED_PROCEDURE, PT_ALTER_TRIGGER, PT_ALTER_USER, PT_COMMIT_WORK, PT_CREATE_ENTITY, PT_CREATE_INDEX, PT_CREATE_SERIAL, PT_CREATE_STORED_PROCEDURE, PT_CREATE_TRIGGER, PT_CREATE_USER, PT_DELETE, PT_DIFFERENCE, PT_DO, PT_DROP, PT_DROP_INDEX, PT_DROP_SERIAL, PT_DROP_SESSION_VARIABLES, PT_DROP_STORED_PROCEDURE, PT_DROP_TRIGGER, PT_DROP_USER, PT_DROP_VARIABLE, PT_EVALUATE, PT_EXECUTE_PREPARE, PT_EXECUTE_TRIGGER, pt_free_orphans(), PT_GET_OPT_LVL, PT_GET_STATS, PT_GET_TRIGGER, PT_GET_XACTION, PT_GRANT, PT_INSERT, PT_INTERSECTION, pt_is_ddl_statement(), PT_KILL_STMT, PT_MERGE, PT_METHOD_CALL, PT_PREPARE_TO_COMMIT, PT_QUERY_TRACE, PT_REMOVE_TRIGGER, PT_RENAME, PT_RENAME_TRIGGER, PT_REVOKE, PT_ROLLBACK_WORK, PT_SAVEPOINT, PT_SCOPE, PT_SELECT, PT_SET_NAMES, PT_SET_OPT_LVL, PT_SET_SESSION_VARIABLES, PT_SET_SYS_PARAMS, PT_SET_TIMEZONE, PT_SET_TRIGGER, PT_SET_XACTION, PT_TRUNCATE, PT_UNION, PT_UPDATE, PT_UPDATE_STATS, PT_VACUUM, qo_need_skip_execution(), parser_context::query_id, RESET_HOST_VARIABLES_IF_INTERNAL_STATEMENT, SET_HOST_VARIABLES_IF_INTERNAL_STATEMENT, parser_node::sql_user_text, TM_TRAN_READ_FETCH_VERSION, tran_abort_only_client(), and tran_was_latest_query_aborted().
Referenced by db_execute_and_keep_statement_local(), and do_scope().
int do_execute_trigger | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement | ||
) |
Definition at line 6580 of file execute_statement.c.
References CHECK_MODIFICATION_ERROR, convert_speclist_to_objlist(), error(), pt_statement_info::execute_trigger, parser_node::info, ml_ext_free(), db_objlist::next, NO_ERROR, NULL, db_objlist::op, tr_execute_deferred_activities(), and pt_execute_trigger_info::trigger_spec_list.
Referenced by do_execute_statement(), and do_statement().
int do_execute_update | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement | ||
) |
Definition at line 9119 of file execute_statement.c.
References assert, AU_RESTORE, AU_SAVE_AND_DISABLE, AU_SAVE_AND_ENABLE, parser_context::auto_param_count, CHECK_MODIFICATION_ERROR, cursor_free_self_list_id, db_abort_to_savepoint(), db_is_vclass(), pt_name_info::db_object, DEFAULT_EXEC_MODE, do_send_plan_trace_to_session(), do_set_trace_to_query_flag(), er_errid(), ER_GENERIC_ERROR, ER_LK_UNILATERALLY_ABORTED, er_msg(), err, execute_query(), EXECUTE_QUERY_WITH_COMMIT, pt_spec_info::flag, parser_context::flag, pt_spec_info::flat_entity_list, parser_context::host_var_count, parser_context::host_variables, if(), parser_node::info, parser_context::is_auto_commit, parser_context::is_xasl_pinned_reference, mq_generate_name(), pt_statement_info::name, parser_node::next, NO_ERROR, NOT_FROM_RESULT_CACHE, NULL, pt_update_info::object, pt_name_info::original, prm_get_bool_value(), PRM_ID_QUERY_TRACE, pt_end_query(), PT_HINT_LK_TIMEOUT, PT_IS_HINT_NODE, pt_record_error(), PT_SPEC_FLAG_UPDATE, qo_do_auto_parameterize(), parser_context::query_id, parser_context::query_trace, RESULT_CACHE_INHIBITED, pt_update_info::server_update, sm_decache_instances_after_query_executed_with_commit(), sm_flush_and_decache_objects(), sm_flush_objects(), pt_update_info::spec, pt_statement_info::spec, parser_context::statement_number, TM_TRAN_ISOLATION, TM_TRAN_WAIT_MSECS, TRAN_AUTO_COMMIT, tran_flush_to_commit(), TRAN_REP_READ, tran_reset_wait_times(), tran_system_savepoint(), tran_was_latest_query_committed(), qfile_list_id::tuple_cnt, pt_statement_info::update, update_class_attributes(), UPDATE_OBJECT, update_object_by_oid(), update_objs_for_list_file(), update_savepoint_number, pt_update_info::waitsecs_hint, and XASL_CACHE_PINNED_REFERENCE.
Referenced by do_execute_statement().
int do_get_optimization_param | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement | ||
) |
Definition at line 4753 of file execute_statement.c.
References pt_get_opt_lvl_info::args, assert, db_get_string(), db_make_int(), db_make_null(), db_make_string(), db_private_alloc, db_value_copy(), db_value_create(), er_errid(), ER_OBJ_INVALID_ARGUMENTS, ER_OUT_OF_VIRTUAL_MEMORY, error(), parser_node::etc, pt_statement_info::get_opt_lvl, i, parser_node::info, pt_get_opt_lvl_info::into_var, pt_statement_info::name, db_value::need_clear, NO_ERROR, parser_node::node_type, NULL, pt_get_opt_lvl_info::option, pt_name_info::original, pr_clear_value(), pt_associate_label_with_value_check_reference(), pt_evaluate_tree(), pt_has_error, PT_NAME, PT_OPT_COST, PT_OPT_LVL, qo_get_optimization_param(), QO_PARAM_COST, and QO_PARAM_LEVEL.
Referenced by do_execute_statement(), and do_statement().
int do_get_serial_cached_num | ( | int * | cached_num, |
MOP | serial_obj | ||
) |
Definition at line 1253 of file execute_statement.c.
References assert, db_get(), db_get_int(), DB_TYPE_INTEGER, DB_VALUE_TYPE, error(), NO_ERROR, and SERIAL_ATTR_CACHED_NUM.
Referenced by db_get_serial_current_value(), db_get_serial_next_value_ex(), populate_auto_increment(), pt_evaluate_tree_internal(), and pt_to_regu_variable().
MOP do_get_serial_obj_id | ( | DB_IDENTIFIER * | serial_obj_id, |
DB_OBJECT * | serial_class_mop, | ||
const char * | serial_name | ||
) |
Definition at line 1184 of file execute_statement.c.
References ARG_FILE_LINE, assert, AU_DISABLE, AU_ENABLE, db_find_unique(), db_make_string(), er_clear(), er_errid(), ER_ERROR_SEVERITY, ER_OBJ_OBJECT_NOT_FOUND, ER_OUT_OF_VIRTUAL_MEMORY, er_set(), free_and_init, intl_identifier_lower(), intl_identifier_lower_string_size(), NO_ERROR, NULL, OID_SET_NULL, p, pr_clear_value(), SERIAL_ATTR_NAME, and ws_identifier().
Referenced by au_change_serial_owner_method(), db_get_serial_current_value(), db_get_serial_next_value_ex(), disk_to_class(), do_alter_serial(), do_change_att_schema_only(), do_create_auto_increment_serial(), do_create_serial(), do_drop_serial(), do_find_auto_increment_serial(), do_update_maxvalue_of_auto_increment_serial(), populate_auto_increment(), and pt_resolve_serial().
int do_get_stats | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement | ||
) |
Definition at line 4317 of file execute_statement.c.
References pt_get_stats_info::args, assert, check_timeout_value(), pt_get_stats_info::class_, db_find_class(), db_get_string(), DB_IS_NULL, db_make_null(), pt_name_info::db_object, db_value_copy(), db_value_create(), er_errid(), ER_OBJ_INVALID_ARGUMENTS, error(), parser_node::etc, get_savepoint_name_from_db_value(), pt_statement_info::get_stats, parser_node::info, pt_get_stats_info::into_var, make_cst_item_value(), map_iso_levels(), pt_statement_info::name, NO_ERROR, parser_node::node_type, NULL, pt_name_info::original, pr_clear_value(), pt_associate_label_with_value_check_reference(), pt_check_user_owns_class(), pt_evaluate_tree(), pt_has_error, PT_NAME, and set_iso_level().
Referenced by do_execute_statement(), and do_statement().
int do_get_trigger | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement | ||
) |
Definition at line 6749 of file execute_statement.c.
References assert, db_make_int(), db_make_null(), db_value_copy(), db_value_create(), er_errid(), error(), parser_node::etc, pt_statement_info::get_trigger, parser_node::info, pt_get_trigger_info::into_var, pt_statement_info::name, NO_ERROR, parser_node::node_type, NULL, pt_set_trigger_info::option, pt_name_info::original, pt_associate_label_with_value_check_reference(), PT_NAME, PT_TRIGGER_DEPTH, PT_TRIGGER_TRACE, pt_statement_info::set_trigger, tr_get_depth(), and tr_get_trace().
Referenced by do_execute_statement(), and do_statement().
int do_get_xaction | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement | ||
) |
Definition at line 4557 of file execute_statement.c.
References assert, db_make_float(), db_make_int(), db_value_create(), er_errid(), error(), parser_node::etc, pt_statement_info::get_xaction, parser_node::info, pt_get_xaction_info::into_var, pt_statement_info::name, NO_ERROR, parser_node::node_type, NULL, pt_get_xaction_info::option, pt_name_info::original, pt_associate_label_with_value_check_reference(), PT_ISOLATION_LEVEL, PT_LOCK_TIMEOUT, PT_NAME, TRAN_ASYNC_WS_BIT, tran_get_tran_settings(), and TRAN_UNKNOWN_ISOLATION.
Referenced by do_execute_statement(), and do_statement().
int do_grant | ( | const PARSER_CONTEXT * | parser, |
const PT_NODE * | statement | ||
) |
Definition at line 1747 of file execute_schema.c.
References assert, pt_grant_info::auth_cmd_list, CHECK_MODIFICATION_ERROR, db_find_class(), db_find_user(), db_grant(), er_errid(), ER_IS_ABORTED_DUE_TO_DEADLOCK, error(), pt_spec_info::flat_entity_list, pt_statement_info::grant, pt_grant_info::grant_option, parser_node::info, pt_statement_info::name, parser_node::next, NO_ERROR, NULL, pt_name_info::original, pt_auth_to_db_auth(), PT_GRANT_OPTION, pt_statement_info::spec, pt_grant_info::spec_list, tran_abort_upto_system_savepoint(), tran_system_savepoint(), UNIQUE_SAVEPOINT_GRANT_USER, and pt_grant_info::user_list.
Referenced by do_execute_statement(), and do_statement().
int do_insert | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement | ||
) |
Definition at line 13341 of file execute_statement.c.
References parser_context::abort, assert, CHECK_MODIFICATION_ERROR, er_errid(), error(), parser_context::error_msgs, parser_node::etc, parser_context::flag, insert_local(), parser_node::next, NO_ERROR, NULL, parser_free_tree(), PT_EXECUTION, pt_has_error, and pt_report_to_ersys().
Referenced by do_execute_insert(), do_statement(), and pt_evaluate_tree_internal().
int do_kill | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement | ||
) |
Definition at line 17445 of file execute_statement.c.
References ARG_FILE_LINE, assert, au_is_dba_group_member(), Au_user, pt_value_info::data_value, ER_ERROR_SEVERITY, ER_OUT_OF_VIRTUAL_MEMORY, er_set(), error(), free_and_init, i, pt_data_value::i, parser_node::info, pt_killstmt_info::kill_type, pt_statement_info::killstmt, KILLSTMT_QUERY, parser_node::next, NO_ERROR, NULL, pt_length_of_list(), PT_TYPE_INTEGER, thread_kill_or_interrupt_tran(), pt_killstmt_info::tran_id_list, parser_node::type_enum, and pt_statement_info::value.
Referenced by do_execute_statement().
int do_merge | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement | ||
) |
Definition at line 15407 of file execute_statement.c.
References parser_context::abort, pt_expr_info::arg1, assert, ASSERT_ERROR_AND_SET, pt_merge_info::assignment, pt_merge_info::attr_list, AU_DISABLE, AU_ENABLE, parser_context::au_save, check_for_cons(), check_missing_non_null_attrs(), CHECK_MODIFICATION_ERROR, parser_node::column_number, cursor_free_self_list_id, db_abort_to_savepoint(), DB_FETCH_CLREAD_INSTWRITE, db_is_vclass(), pt_name_info::db_object, pt_merge_info::do_class_attrs, do_select_for_ins_upd(), er_errid(), ER_GENERIC_ERROR, ER_LK_UNILATERALLY_ABORTED, er_msg(), err, parser_node::etc, pt_statement_info::expr, parser_context::flag, pt_merge_info::flags, pt_spec_info::flat_entity_list, pt_merge_info::hint, parser_node::info, pt_merge_info::insert, insert_subquery_results(), pt_merge_info::into, parser_node::line_number, pt_node_list_info::list, pt_node_list_info::list_type, locator_fetch_class(), pt_statement_info::merge, merge_savepoint_number, mq_generate_name(), mq_translate(), pt_statement_info::name, NO_ERROR, pt_statement_info::node_list, NULL, obt_begin_insert_values(), pt_name_info::original, parser_copy_tree_list(), parser_free_tree(), pt_end_query(), pt_false_where(), pt_get_assignment_lists(), pt_has_error, PT_HINT_LK_TIMEOUT, PT_IS_HINT_NODE, PT_IS_N_COLUMN_UPDATE_EXPR, PT_IS_SUBQUERY, PT_MERGE_INFO_HAS_UNIQUE, PT_META_ATTR, pt_record_error(), pt_report_to_ersys_with_statement(), pt_restore_assignment_links(), PT_SEMANTIC, pt_to_merge_insert_query(), pt_to_merge_update_query(), qmgr_end_query(), qo_need_skip_execution(), parser_context::query_id, sm_flush_objects(), pt_statement_info::spec, parser_context::statement_number, TM_TRAN_WAIT_MSECS, tran_reset_wait_times(), tran_system_savepoint(), tran_was_latest_query_ended(), pt_merge_info::update, update_check_for_constraints(), update_class_attributes(), update_objs_for_list_file(), pt_merge_info::value_clauses, and pt_merge_info::waitsecs_hint.
Referenced by do_statement(), and ehash_delete().
int do_prepare_delete | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement, | ||
PT_NODE * | parent | ||
) |
Definition at line 10106 of file execute_statement.c.
References ARG_FILE_LINE, assert, ASSERT_ERROR, ASSERT_ERROR_AND_SET, AU_RESTORE, AU_SAVE_AND_DISABLE, xasl_stream::buffer, parser_node::cannot_prepare, pt_delete_info::class_specs, parser_context::context, pt_name_info::db_object, pt_statement_info::delete_, do_prepare_delete(), do_prepare_select(), parser_context::dont_prt_long_string, er_errid(), er_msg(), ER_OBJ_INVALID_ARGUMENTS, er_set(), ER_WARNING_SEVERITY, err, pt_spec_info::flag, parser_node::flag, parser_context::flag, pt_spec_info::flat_entity_list, free_and_init, parser_node::info, init_xasl_stream(), parser_context::long_string_skipped, mq_translate(), MSGCAT_RUNTIME_RESOURCES_EXHAUSTED, MSGCAT_SET_PARSER_RUNTIME, pt_statement_info::name, parser_node::next, NO_ERROR, NULL, parser_free_tree(), prepare_query(), parser_context::print_type_ambiguity, PT_CONVERT_RANGE, pt_copy_upddel_hints_to_select(), pt_enter_packing_buf(), PT_ERRORm, pt_exit_packing_buf(), pt_false_where(), pt_free_statement_xasl_id(), PT_HINT_USE_SBR, PT_INTERNAL_ERROR, PT_NODE_PRINT_TO_ALIAS, PT_PRINT_QUOTES, PT_PRINT_USER, pt_record_error(), PT_SPEC_FLAG_DELETE, pt_split_delete_stmt(), pt_to_delete_xasl(), pt_to_upd_del_query(), compile_context::recompile_xasl, S_DELETE, pt_delete_info::search_cond, compile_context::sha1, SHA1Compute(), sm_class_has_triggers(), pt_delete_info::spec, pt_statement_info::spec, compile_context::sql_hash_text, compile_context::sql_user_text, compile_context::sql_user_text_len, parser_context::statement_number, strlen, TR_EVENT_DELETE, TR_EVENT_STATEMENT_DELETE, pt_delete_info::using_index, pt_name_info::virt_object, while(), pt_delete_info::with, compile_context::xasl, xasl_stream::xasl_id, parser_node::xasl_id, and xts_map_xasl_to_stream().
Referenced by do_prepare_delete(), and do_prepare_statement().
int do_prepare_insert | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement | ||
) |
Definition at line 13394 of file execute_statement.c.
References assert, ASSERT_ERROR, pt_update_info::assignment, AU_DISABLE, AU_ENABLE, pt_statement_info::check_option, pt_update_info::check_where, cleanup(), do_insert_checks(), do_prepare_insert_internal(), ER_GENERIC_ERROR, error(), parser_node::etc, pt_check_option_info::expr, pt_spec_info::flat_entity_list, parser_node::info, pt_statement_info::insert, NO_ERROR, parser_node::node_type, NULL, parser_free_tree(), PT_INSERT, pt_length_of_list(), pt_insert_info::server_allowed, SERVER_INSERT_IS_ALLOWED, pt_insert_info::spec, pt_update_info::spec, pt_statement_info::spec, pt_statement_info::update, and pt_insert_info::value_clauses.
Referenced by do_prepare_statement().
int do_prepare_merge | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement | ||
) |
Definition at line 15827 of file execute_statement.c.
References parser_node::alias_print, pt_expr_info::arg1, ARG_FILE_LINE, assert, ASSERT_ERROR, ASSERT_ERROR_AND_SET, pt_merge_info::assignment, update_proc_node::assigns, pt_merge_info::attr_list, AU_RESTORE, AU_SAVE_AND_DISABLE, AU_SAVE_AND_ENABLE, xasl_stream::buffer, parser_node::cannot_prepare, check_for_cons(), check_missing_non_null_attrs(), cleanup(), parser_node::column_number, update_assignment::constant, parser_context::context, db_is_vclass(), pt_name_info::db_object, pt_merge_info::do_class_attrs, do_evaluate_default_expr(), do_prepare_select(), parser_context::dont_prt_long_string, er_errid(), ER_FAILED, er_msg(), ER_OBJ_INVALID_ARGUMENTS, er_set(), ER_WARNING_SEVERITY, err, pt_statement_info::expr, parser_node::flag, parser_context::flag, pt_merge_info::flags, pt_spec_info::flat_entity_list, free_and_init, pt_merge_info::has_delete, i, if(), parser_node::info, init_xasl_stream(), pt_merge_info::insert, INSERT_SELECT, pt_merge_info::into, parser_node::line_number, parser_context::long_string_skipped, xasl_node::merge, pt_statement_info::merge, pt_name_info::meta_class, mq_translate(), MSGCAT_RUNTIME_RESOURCES_EXHAUSTED, MSGCAT_SET_PARSER_RUNTIME, pt_statement_info::name, parser_node::next, NO_ERROR, parser_node::node_type, NULL, update_proc_node::num_assigns, parser_copy_tree_list(), parser_free_tree(), pr_clear_value(), prepare_query(), parser_context::print_type_ambiguity, prm_get_integer_value(), PRM_ID_INSERT_MODE, xasl_node::proc, PT_CONVERT_RANGE, pt_enter_packing_buf(), PT_ERRORm, pt_exit_packing_buf(), pt_false_where(), pt_find_omitted_default_expr(), pt_get_assignment_lists(), pt_has_error, PT_IS_N_COLUMN_UPDATE_EXPR, PT_MERGE_INFO_HAS_UNIQUE, PT_MERGE_INFO_INSERT_ONLY, PT_MERGE_INFO_SERVER_OP, PT_META_ATTR, PT_NAME, PT_NODE_PRINT_TO_ALIAS, PT_NORMAL, PT_PRINT_QUOTES, PT_PRINT_USER, pt_record_error(), pt_restore_assignment_links(), pt_to_merge_update_query(), pt_to_merge_xasl(), parser_node::recompile, compile_context::recompile_xasl, compile_context::sha1, SHA1Compute(), sm_class_has_triggers(), pt_statement_info::spec, compile_context::sql_hash_text, compile_context::sql_user_text, parser_node::sql_user_text, compile_context::sql_user_text_len, parser_node::sql_user_text_len, parser_context::statement_number, strlen, TR_EVENT_DELETE, TR_EVENT_INSERT, TR_EVENT_STATEMENT_DELETE, TR_EVENT_STATEMENT_INSERT, TR_EVENT_STATEMENT_UPDATE, TR_EVENT_UPDATE, xasl_node::update, pt_merge_info::update, update_check_for_constraints(), update_check_having_meta_attr(), merge_proc_node::update_xasl, parser_node::use_plan_cache, pt_merge_info::value_clauses, compile_context::xasl, xasl_stream::xasl_id, parser_node::xasl_id, and xts_map_xasl_to_stream().
Referenced by do_prepare_statement().
int do_prepare_select | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement | ||
) |
Definition at line 14078 of file execute_statement.c.
References parser_node::alias_print, ARG_FILE_LINE, assert, ASSERT_ERROR, ASSERT_ERROR_AND_SET, AU_RESTORE, AU_SAVE_AND_DISABLE, xasl_stream::buffer, parser_node::cannot_prepare, CHECK_MODIFICATION_ERROR, parser_context::context, parser_context::dont_prt_long_string, er_errid(), ER_FAILED, ER_OBJ_INVALID_ARGUMENTS, er_set(), ER_WARNING_SEVERITY, err, parser_node::flag, parser_context::flag, free_and_init, xasl_node::header, parser_node::info, init_xasl_stream(), parser_node::is_click_counter, parser_context::long_string_skipped, MSGCAT_RUNTIME_RESOURCES_EXHAUSTED, MSGCAT_SET_PARSER_RUNTIME, NO_ERROR, NULL, pt_query_info::oids_included, parser_generate_xasl(), prepare_query(), parser_context::print_type_ambiguity, PT_CONVERT_RANGE, pt_enter_packing_buf(), PT_ERRORm, pt_exit_packing_buf(), pt_false_where(), pt_has_error, PT_NODE_PRINT_TO_ALIAS, PT_PRINT_DIFFERENT_SYSTEM_PARAMETERS, PT_PRINT_QUOTES, PT_PRINT_USER, pt_recompile_for_limit_optimizations(), pt_report_to_ersys(), pt_reset_error(), PT_SEMANTIC, pt_statement_info::query, parser_node::recompile, compile_context::recompile_xasl, RESULT_CACHE_INHIBITED, compile_context::sha1, SHA1Compute(), compile_context::sql_hash_text, compile_context::sql_user_text, parser_node::sql_user_text, compile_context::sql_user_text_len, parser_node::sql_user_text_len, strlen, parser_node::use_plan_cache, compile_context::xasl, xasl_node_header::xasl_flag, xasl_stream::xasl_header, xasl_stream::xasl_id, parser_node::xasl_id, and xts_map_xasl_to_stream().
Referenced by do_prepare_delete(), do_prepare_merge(), do_prepare_statement(), and do_prepare_update().
int do_prepare_session_statement | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement | ||
) |
Definition at line 14269 of file execute_statement.c.
References ARG_FILE_LINE, assert, ER_ERROR_SEVERITY, ER_OUT_OF_VIRTUAL_MEMORY, er_set(), pt_statement_info::execute, parser_node::info, NO_ERROR, parser_node::node_type, NULL, PT_EXECUTE_PREPARE, pt_execute_info::xasl_id, parser_node::xasl_id, and XASL_ID_COPY.
Referenced by do_prepare_statement().
int do_prepare_statement | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement | ||
) |
Definition at line 3380 of file execute_statement.c.
References do_prepare_delete(), do_prepare_insert(), do_prepare_merge(), do_prepare_select(), do_prepare_session_statement(), do_prepare_update(), er_errid(), ER_FAILED, ER_GENERIC_ERROR, err, init_compile_context(), NO_ERROR, parser_node::node_type, NULL, PT_DELETE, PT_DIFFERENCE, PT_EXECUTE_PREPARE, PT_INSERT, PT_INTERSECTION, PT_MERGE, PT_SELECT, PT_UNION, and PT_UPDATE.
Referenced by db_compile_statement_local(), db_execute_and_keep_statement_local(), and do_scope().
int do_prepare_to_commit | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement | ||
) |
Definition at line 4416 of file execute_statement.c.
References db_2pc_prepare_to_commit_transaction(), ER_GENERIC_ERROR, parser_node::info, parser_node::node_type, pt_statement_info::prepare_to_commit, pt_has_error, PT_PREPARE_TO_COMMIT, and pt_attach_info::trans_id.
Referenced by do_execute_statement(), and do_statement().
int do_prepare_update | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement | ||
) |
Definition at line 8738 of file execute_statement.c.
References pt_expr_info::arg1, ARG_FILE_LINE, assert, ASSERT_ERROR, ASSERT_ERROR_AND_SET, pt_update_info::assignment, update_proc_node::assigns, AU_RESTORE, AU_SAVE_AND_DISABLE, bool, xasl_stream::buffer, pt_update_info::class_specs, update_assignment::constant, parser_context::context, pt_name_info::db_object, do_prepare_select(), parser_context::dont_prt_long_string, er_errid(), er_msg(), ER_OBJ_INVALID_ARGUMENTS, er_set(), ER_WARNING_SEVERITY, err, pt_statement_info::expr, pt_spec_info::flag, parser_node::flag, parser_context::flag, pt_spec_info::flat_entity_list, free_and_init, i, parser_node::info, init_xasl_stream(), locator_flush_class(), parser_context::long_string_skipped, pt_name_info::meta_class, mq_translate(), MSGCAT_RUNTIME_RESOURCES_EXHAUSTED, MSGCAT_SET_PARSER_RUNTIME, pt_statement_info::name, parser_node::next, NO_ERROR, NULL, update_proc_node::num_assigns, pt_update_info::order_by, pt_update_info::orderby_for, parser_free_tree(), pr_clear_value(), prepare_query(), parser_context::print_type_ambiguity, xasl_node::proc, pt_append_omitted_on_update_expr_assignments(), PT_CONVERT_RANGE, pt_copy_upddel_hints_to_select(), pt_enter_packing_buf(), PT_ERRORm, pt_exit_packing_buf(), pt_false_where(), pt_get_assignment_lists(), PT_HINT_USE_SBR, PT_INTERNAL_ERROR, PT_IS_N_COLUMN_UPDATE_EXPR, PT_META_ATTR, PT_NODE_PRINT_TO_ALIAS, PT_PRINT_QUOTES, PT_PRINT_USER, pt_record_error(), pt_restore_assignment_links(), PT_SPEC_FLAG_UPDATE, pt_to_upd_del_query(), pt_to_update_xasl(), compile_context::recompile_xasl, S_UPDATE, pt_update_info::search_cond, pt_update_info::server_update, compile_context::sha1, SHA1Compute(), sm_class_has_triggers(), pt_update_info::spec, pt_statement_info::spec, compile_context::sql_hash_text, compile_context::sql_user_text, compile_context::sql_user_text_len, parser_context::statement_number, strlen, TR_EVENT_STATEMENT_UPDATE, TR_EVENT_UPDATE, xasl_node::update, pt_statement_info::update, update_check_for_constraints(), update_check_having_meta_attr(), parser_node::use_plan_cache, pt_update_info::using_index, pt_name_info::virt_object, pt_update_info::with, compile_context::xasl, xasl_stream::xasl_id, parser_node::xasl_id, and xts_map_xasl_to_stream().
Referenced by do_prepare_statement().
int do_remove_trigger | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement | ||
) |
Definition at line 6612 of file execute_statement.c.
References CHECK_MODIFICATION_ERROR, convert_speclist_to_objlist(), error(), parser_node::info, ml_ext_free(), db_objlist::next, NO_ERROR, NULL, db_objlist::op, pt_statement_info::remove_trigger, tr_drop_deferred_activities(), and pt_remove_trigger_info::trigger_spec_list.
Referenced by do_execute_statement(), and do_statement().
int do_rename | ( | const PARSER_CONTEXT * | parser, |
const PT_NODE * | statement | ||
) |
Definition at line 2587 of file execute_schema.c.
References acquire_locks_for_multiple_rename(), CHECK_MODIFICATION_ERROR, do_recreate_renamed_class_indexes(), do_rename_internal(), ER_LK_UNILATERALLY_ABORTED, error(), parser_node::info, pt_statement_info::name, pt_rename_info::new_name, parser_node::next, NO_ERROR, NULL, pt_rename_info::old_name, pt_name_info::original, pt_statement_info::rename, tran_abort_upto_system_savepoint(), tran_system_savepoint(), and UNIQUE_SAVEPOINT_RENAME.
Referenced by do_execute_statement(), and do_statement().
int do_rename_trigger | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement | ||
) |
Definition at line 6645 of file execute_statement.c.
References assert, CHECK_MODIFICATION_ERROR, er_errid(), error(), parser_node::info, pt_statement_info::name, pt_rename_trigger_info::new_name, NO_ERROR, NULL, pt_rename_trigger_info::old_name, pt_name_info::original, pt_statement_info::rename_trigger, tr_find_trigger(), and tr_rename_trigger().
Referenced by do_execute_statement(), and do_statement().
int do_replicate_statement | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement | ||
) |
Definition at line 14632 of file execute_statement.c.
References pt_statement_info::alter, assert, assert_release, pt_statement_info::create_entity, CUBRID_STMT_ALTER_CLASS, CUBRID_STMT_ALTER_INDEX, CUBRID_STMT_ALTER_SERIAL, CUBRID_STMT_ALTER_STORED_PROCEDURE, CUBRID_STMT_ALTER_USER, CUBRID_STMT_CREATE_CLASS, CUBRID_STMT_CREATE_INDEX, CUBRID_STMT_CREATE_SERIAL, CUBRID_STMT_CREATE_STORED_PROCEDURE, CUBRID_STMT_CREATE_TRIGGER, CUBRID_STMT_CREATE_USER, CUBRID_STMT_DELETE, CUBRID_STMT_DROP_CLASS, CUBRID_STMT_DROP_INDEX, CUBRID_STMT_DROP_SERIAL, CUBRID_STMT_DROP_STORED_PROCEDURE, CUBRID_STMT_DROP_TRIGGER, CUBRID_STMT_DROP_USER, CUBRID_STMT_GRANT, CUBRID_STMT_INSERT, CUBRID_STMT_REMOVE_TRIGGER, CUBRID_STMT_RENAME_CLASS, CUBRID_STMT_RENAME_TRIGGER, CUBRID_STMT_REVOKE, CUBRID_STMT_SET_TRIGGER, CUBRID_STMT_TRUNCATE, CUBRID_STMT_UPDATE, CUBRID_STMT_UPDATE_STATS, db_get_user_name(), db_string_free(), repl_info_statement::db_user, pt_statement_info::drop, pt_alter_info::entity_name, pt_create_entity_info::entity_name, pt_spec_info::entity_name, ER_IT_UNKNOWN_VARIABLE, ER_OUT_OF_VIRTUAL_MEMORY, error(), parser_context::host_var_count, parser_context::host_variables, i, pt_drop_info::if_exists, pt_statement_info::index, pt_index_info::indexed_class, repl_info::info, parser_node::info, parser_varchar::length, locator_flush_replication_info(), log_does_allow_replication(), repl_info_statement::name, NO_ERROR, parser_node::node_type, NULL, pt_rename_info::old_name, PT_ALTER, PT_ALTER_INDEX, PT_ALTER_SERIAL, PT_ALTER_STORED_PROCEDURE, PT_ALTER_TRIGGER, PT_ALTER_USER, PT_CREATE_ENTITY, PT_CREATE_INDEX, PT_CREATE_SERIAL, PT_CREATE_STORED_PROCEDURE, PT_CREATE_TRIGGER, PT_CREATE_USER, PT_DELETE, PT_DROP, PT_DROP_INDEX, PT_DROP_SERIAL, PT_DROP_STORED_PROCEDURE, PT_DROP_TRIGGER, PT_DROP_USER, PT_DROP_VARIABLE, pt_get_varchar_bytes(), PT_GRANT, PT_INSERT, pt_is_ddl_statement(), pt_print_bytes(), pt_print_db_value(), PT_REMOVE_TRIGGER, PT_RENAME, PT_RENAME_TRIGGER, PT_REVOKE, PT_TRUNCATE, PT_UPDATE, PT_UPDATE_STATS, pt_statement_info::rename, repl_info::repl_info_type, REPL_INFO_TYPE_SBR, pt_statement_info::spec, pt_drop_info::spec_list, parser_node::sql_user_text, parser_node::sql_user_text_len, repl_info_statement::statement_type, repl_info_statement::stmt_text, strlen, repl_info_statement::sys_prm_context, sysprm_print_parameters_for_ha_repl(), and truncate_need_repl_log().
Referenced by do_execute_statement(), and do_statement().
int do_reset_auto_increment_serial | ( | MOP | serial_obj | ) |
Definition at line 942 of file execute_statement.c.
References assert, db_get(), db_make_int(), db_make_null(), db_value_clear(), dbt_abort_object(), dbt_edit_object(), dbt_finish_object(), dbt_put_internal(), er_errid(), ER_OBJ_INVALID_ARGUMENTS, locator_flush_instance(), NO_ERROR, NULL, SERIAL_ATTR_CURRENT_VAL, SERIAL_ATTR_MIN_VAL, and SERIAL_ATTR_STARTED.
Referenced by sm_truncate_class().
int do_revoke | ( | const PARSER_CONTEXT * | parser, |
const PT_NODE * | statement | ||
) |
Definition at line 1836 of file execute_schema.c.
References assert, pt_revoke_info::auth_cmd_list, CHECK_MODIFICATION_ERROR, db_find_class(), db_find_user(), db_revoke(), er_errid(), ER_IS_ABORTED_DUE_TO_DEADLOCK, error(), pt_spec_info::flat_entity_list, parser_node::info, pt_statement_info::name, parser_node::next, NO_ERROR, NULL, pt_name_info::original, pt_auth_to_db_auth(), pt_statement_info::revoke, pt_statement_info::spec, pt_revoke_info::spec_list, tran_abort_upto_system_savepoint(), tran_system_savepoint(), UNIQUE_SAVEPOINT_REVOKE_USER, and pt_revoke_info::user_list.
Referenced by do_execute_statement(), and do_statement().
int do_rollback | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement | ||
) |
Definition at line 4453 of file execute_statement.c.
References assert, db_abort_to_savepoint_internal(), db_make_null(), db_value_clear(), er_errid(), ER_GENERIC_ERROR, error(), get_savepoint_name_from_db_value(), parser_node::info, pt_name_info::meta_class, pt_statement_info::name, NO_ERROR, parser_node::node_type, NULL, pt_name_info::original, pt_evaluate_tree(), pt_has_error, PT_NAME, PT_PARAMETER, pt_statement_info::rollback_work, pt_rollback_work_info::save_name, and tran_abort().
Referenced by do_alter(), do_alter_index_comment(), do_alter_index_rebuild(), do_alter_index_status(), do_execute_statement(), and do_statement().
int do_savepoint | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement | ||
) |
Definition at line 4505 of file execute_statement.c.
References assert, db_make_null(), db_savepoint_transaction_internal(), db_value_clear(), er_errid(), ER_GENERIC_ERROR, error(), get_savepoint_name_from_db_value(), parser_node::info, pt_name_info::meta_class, pt_statement_info::name, NO_ERROR, parser_node::node_type, NULL, pt_name_info::original, pt_evaluate_tree(), pt_has_error, PT_INTERNAL_ERROR, PT_NAME, PT_PARAMETER, pt_savepoint_info::save_name, and pt_statement_info::savepoint.
Referenced by do_execute_statement(), and do_statement().
int do_scope | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement | ||
) |
Definition at line 14945 of file execute_statement.c.
References pt_trigger_action_info::action_type, do_execute_statement(), do_prepare_statement(), do_statement(), do_Trigger_involved, ER_GENERIC_ERROR, error(), pt_trigger_action_info::expression, parser_node::info, NO_ERROR, parser_node::node_type, prm_get_integer_value(), PT_EXPRESSION, PT_INVALIDATE_XACTION, PT_PRINT, PT_REJECT, PT_SCOPE, PT_TRIGGER_ACTION, pt_statement_info::scope, pt_scope_info::stmt, and pt_statement_info::trigger_action.
Referenced by do_execute_statement(), do_statement(), and pt_exec_trigger_stmt().
int do_select | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement | ||
) |
Definition at line 13869 of file execute_statement.c.
References do_select_internal().
Referenced by do_execute_merge(), do_statement(), insert_subquery_results(), pt_evaluate_tree_internal(), pt_set_table_to_db(), and select_delete_list().
int do_select_for_ins_upd | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement | ||
) |
Definition at line 13883 of file execute_statement.c.
References do_select_internal().
Referenced by do_merge(), and get_select_list_to_update().
int do_set_names | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement | ||
) |
Definition at line 16638 of file execute_statement.c.
References pt_set_names_info::charset_node, COLL_NAME_SIZE, pt_set_names_info::collation_node, db_set_system_parameters(), ER_GENERIC_ERROR, ER_OBJ_INVALID_ARGUMENTS, error(), parser_node::info, lang_get_collation_name(), NO_ERROR, NULL, pt_check_grammar_charset_collation(), and pt_statement_info::set_names.
Referenced by do_execute_statement(), and do_statement().
int do_set_optimization_param | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement | ||
) |
Definition at line 4831 of file execute_statement.c.
References db_get_int(), db_get_string(), db_make_null(), DB_TYPE_CHAR, DB_TYPE_INTEGER, DB_TYPE_NCHAR, DB_TYPE_VARCHAR, DB_TYPE_VARNCHAR, DB_VALUE_TYPE, ER_ERROR_SEVERITY, ER_OBJ_INVALID_ARGUMENTS, er_set(), parser_node::info, parser_node::next, NO_ERROR, NULL, pt_set_opt_lvl_info::option, pr_clear_value(), pt_evaluate_tree(), pt_has_error, PT_OPT_COST, PT_OPT_LVL, QO_PARAM_COST, QO_PARAM_LEVEL, qo_set_optimization_param(), pt_statement_info::set_opt_lvl, pt_set_opt_lvl_info::val, serial_invariant::val1, and serial_invariant::val2.
Referenced by do_execute_statement(), and do_statement().
int do_set_query_trace | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement | ||
) |
Definition at line 17410 of file execute_statement.c.
References pt_trace_info::format, parser_node::info, NO_ERROR, pt_trace_info::on_off, PRM_ID_QUERY_TRACE, PRM_ID_QUERY_TRACE_FORMAT, prm_set_bool_value(), prm_set_integer_value(), PT_TRACE_FORMAT_JSON, PT_TRACE_FORMAT_TEXT, PT_TRACE_ON, QUERY_TRACE_JSON, QUERY_TRACE_TEXT, and pt_statement_info::trace.
Referenced by do_execute_statement(), and do_statement().
int do_set_session_variables | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement | ||
) |
Definition at line 15112 of file execute_statement.c.
References pt_expr_info::arg1, pt_expr_info::arg2, ARG_FILE_LINE, assert, pt_set_session_variable_info::assignments, cleanup(), cubregex::count(), csession_set_session_variables(), db_make_null(), er_errid(), ER_ERROR_SEVERITY, ER_OUT_OF_VIRTUAL_MEMORY, er_set(), error(), pt_statement_info::expr, free_and_init, i, parser_node::info, parser_node::next, NO_ERROR, parser_node::node_type, NULL, pr_clear_value(), pr_clone_value(), pt_evaluate_tree_having_serial(), PT_EXECUTION, pt_has_error, pt_report_to_ersys(), PT_SET_SESSION_VARIABLES, pt_value_to_db(), and pt_statement_info::set_variables.
Referenced by do_execute_statement().
int do_set_sys_params | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement | ||
) |
Definition at line 4910 of file execute_statement.c.
References db_get_string(), db_make_null(), db_set_system_parameters(), ER_GENERIC_ERROR, ER_OBJ_INVALID_ARGUMENTS, error(), parser_node::info, parser_node::next, NO_ERROR, NULL, pr_clear_value(), pt_evaluate_tree(), pt_has_error, pt_statement_info::set_sys_params, and pt_set_sys_params_info::val.
Referenced by do_execute_statement(), and do_statement().
int do_set_timezone | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement | ||
) |
Definition at line 16671 of file execute_statement.c.
References assert, parser_varchar::bytes, pt_value_info::data_value, db_set_system_parameters(), ER_OBJ_INVALID_ARGUMENTS, error(), parser_node::info, MAX_LEN, NO_ERROR, NULL, pt_statement_info::set_timezone, pt_data_value::str, pt_set_timezone_info::timezone_node, and pt_statement_info::value.
Referenced by do_execute_statement(), and do_statement().
int do_set_trigger | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement | ||
) |
Definition at line 6679 of file execute_statement.c.
References ARG_FILE_LINE, db_get_int(), db_make_null(), db_value_clear(), DOMAIN_COMPATIBLE, er_errid(), ER_ERROR_SEVERITY, ER_IT_DATA_OVERFLOW, er_set(), ER_TP_CANT_COERCE, error(), parser_node::info, MAX_DOMAIN_NAME_SIZE, NO_ERROR, pt_set_trigger_info::option, pt_evaluate_tree(), pt_has_error, pt_report_to_ersys(), PT_SEMANTIC, PT_TRIGGER_DEPTH, PT_TRIGGER_TRACE, pt_statement_info::set_trigger, tp_domain_name(), tp_domain_status_er_set(), tp_Integer_domain, tp_value_coerce(), tp_value_domain_name(), tr_set_depth(), tr_set_trace(), and pt_set_trigger_info::val.
Referenced by do_execute_statement(), and do_statement().
int do_set_xaction | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement | ||
) |
Definition at line 4667 of file execute_statement.c.
References pt_isolation_lvl_info::async_ws, check_timeout_value(), db_get_float(), db_make_null(), DB_TYPE_INTEGER, DB_VALUE_TYPE, ER_GENERIC_ERROR, error(), parser_node::info, pt_statement_info::isolation_lvl, pt_isolation_lvl_info::level, map_iso_levels(), mode, MSGCAT_MVCC_RUNTIME_XACT_ISO_LVL_MSG, MSGCAT_SET_PARSER_RUNTIME, parser_node::next, NO_ERROR, parser_node::node_type, NULL, PT_ERRORm, pt_evaluate_tree(), pt_has_error, PT_ISOLATION_LVL, PT_TIMEOUT, set_iso_level(), pt_statement_info::set_xaction, pt_statement_info::timeout, tran_reset_isolation(), tran_reset_wait_times(), pt_timeout_info::val, and pt_set_xaction_info::xaction_modes.
Referenced by do_execute_statement(), and do_statement().
int do_statement | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement | ||
) |
Definition at line 2943 of file execute_statement.c.
References parser_node::alias_print, ARG_FILE_LINE, assert, db_set_read_fetch_instance_version(), db_set_suppress_repl_on_transaction(), do_alter(), do_alter_index(), do_alter_serial(), do_alter_trigger(), do_alter_user(), do_attach(), do_call_method(), do_check_delete_trigger(), do_check_insert_trigger(), do_check_internal_statements(), do_check_merge_trigger(), do_check_update_trigger(), do_commit(), do_create_entity(), do_create_index(), do_create_serial(), do_create_trigger(), do_create_user(), do_delete(), do_drop(), do_drop_index(), do_drop_serial(), do_drop_trigger(), do_drop_user(), do_drop_variable(), do_evaluate(), do_execute_do(), do_execute_trigger(), do_get_optimization_param(), do_get_stats(), do_get_trigger(), do_get_xaction(), do_grant(), do_insert(), do_merge(), do_prepare_to_commit(), do_remove_trigger(), do_rename(), do_rename_trigger(), do_replicate_statement(), do_revoke(), do_rollback(), do_savepoint(), do_scope(), do_select(), do_set_names(), do_set_optimization_param(), do_set_query_trace(), do_set_sys_params(), do_set_timezone(), do_set_trigger(), do_set_xaction(), do_truncate(), do_update(), do_update_stats(), ER_BLOCK_DDL_STMT, er_errid(), ER_ERROR_SEVERITY, ER_FAILED, ER_GENERIC_ERROR, ER_LK_UNILATERALLY_ABORTED, ER_PT_UNKNOWN_STATEMENT, er_set(), error(), HA_DISABLED, is_stmt_based_repl_type(), jsp_alter_stored_procedure(), jsp_create_stored_procedure(), jsp_drop_stored_procedure(), LC_FETCH_DIRTY_VERSION, LC_FETCH_MVCC_VERSION, locator_all_flush(), NO_ERROR, parser_node::node_type, NULL, prm_get_bool_value(), PRM_ID_BLOCK_DDL_STATEMENT, PT_2PC_ATTACH, PT_ALTER, PT_ALTER_INDEX, PT_ALTER_SERIAL, PT_ALTER_STORED_PROCEDURE, PT_ALTER_TRIGGER, PT_ALTER_USER, PT_COMMIT_WORK, PT_CREATE_ENTITY, PT_CREATE_INDEX, PT_CREATE_SERIAL, PT_CREATE_STORED_PROCEDURE, PT_CREATE_TRIGGER, PT_CREATE_USER, PT_DELETE, PT_DIFFERENCE, PT_DO, PT_DROP, PT_DROP_INDEX, PT_DROP_SERIAL, PT_DROP_SESSION_VARIABLES, PT_DROP_STORED_PROCEDURE, PT_DROP_TRIGGER, PT_DROP_USER, PT_DROP_VARIABLE, PT_EVALUATE, PT_EXECUTE_PREPARE, PT_EXECUTE_TRIGGER, pt_free_orphans(), PT_GET_OPT_LVL, PT_GET_STATS, PT_GET_TRIGGER, PT_GET_XACTION, PT_GRANT, PT_INSERT, PT_INTERSECTION, pt_is_ddl_statement(), PT_KILL_STMT, PT_MERGE, PT_METHOD_CALL, PT_PREPARE_TO_COMMIT, PT_QUERY_TRACE, PT_REMOVE_TRIGGER, PT_RENAME, PT_RENAME_TRIGGER, PT_REVOKE, PT_ROLLBACK_WORK, PT_SAVEPOINT, PT_SCOPE, PT_SELECT, PT_SET_NAMES, PT_SET_OPT_LVL, PT_SET_SESSION_VARIABLES, PT_SET_SYS_PARAMS, PT_SET_TIMEZONE, PT_SET_TRIGGER, PT_SET_XACTION, PT_TRUNCATE, PT_UNION, PT_UPDATE, PT_UPDATE_STATS, PT_VACUUM, qo_need_skip_execution(), RESET_HOST_VARIABLES_IF_INTERNAL_STATEMENT, SET_HOST_VARIABLES_IF_INTERNAL_STATEMENT, parser_node::sql_user_text, TM_TRAN_READ_FETCH_VERSION, tran_abort_only_client(), and tran_was_latest_query_aborted().
Referenced by db_execute_and_keep_statement_local(), do_execute_statement(), do_scope(), and execute_create_select_query().
int do_truncate | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement | ||
) |
Definition at line 9397 of file execute_schema.c.
References ARG_FILE_LINE, CHECK_MODIFICATION_ERROR, do_is_partitioned_subclass(), ER_ERROR_SEVERITY, ER_INVALID_PARTITION_REQUEST, ER_LK_UNILATERALLY_ABORTED, er_set(), error(), pt_spec_info::flat_entity_list, parser_node::info, pt_statement_info::name, parser_node::next, NO_ERROR, NULL, pt_name_info::original, pt_truncate_info::spec, pt_statement_info::spec, tran_abort_upto_system_savepoint(), tran_system_savepoint(), pt_statement_info::truncate, truncate_class_name(), and UNIQUE_SAVEPOINT_TRUNCATE.
Referenced by do_execute_statement(), and do_statement().
int do_update | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement | ||
) |
Definition at line 8642 of file execute_statement.c.
References pt_update_info::assignment, AU_DISABLE, AU_ENABLE, parser_context::au_save, CHECK_MODIFICATION_ERROR, parser_node::column_number, db_abort_to_savepoint(), er_errid(), ER_GENERIC_ERROR, ER_LK_UNILATERALLY_ABORTED, er_msg(), error(), parser_node::info, parser_node::line_number, mq_generate_name(), parser_node::next, NO_ERROR, parser_node::node_type, NULL, pt_update_info::object, pt_false_where(), PT_INTERNAL_ERROR, pt_record_error(), PT_UPDATE, pt_update_info::server_update, parser_context::statement_number, TM_TRAN_ISOLATION, TRAN_REP_READ, tran_system_savepoint(), pt_statement_info::update, UPDATE_OBJECT, update_object_by_oid(), update_real_class(), and update_savepoint_number.
Referenced by do_statement().
int do_update_auto_increment_serial_on_rename | ( | MOP | serial_obj, |
const char * | class_name, | ||
const char * | att_name | ||
) |
Definition at line 813 of file execute_statement.c.
References ARG_FILE_LINE, assert, AU_DISABLE, AU_ENABLE, au_fetch_instance_force(), AU_FETCH_WRITE, AUTO_INCREMENT_SERIAL_NAME_EXTRA_LENGTH, db_make_null(), db_make_string(), dbt_abort_object(), dbt_edit_object(), dbt_finish_object(), dbt_put_internal(), er_errid(), ER_ERROR_SEVERITY, ER_OBJ_INVALID_ARGUMENTS, ER_OUT_OF_VIRTUAL_MEMORY, er_set(), error(), free_and_init, LC_FETCH_MVCC_VERSION, NO_ERROR, NULL, pr_clear_value(), SERIAL_ATTR_ATT_NAME, SERIAL_ATTR_CLASS_NAME, SERIAL_ATTR_NAME, SET_AUTO_INCREMENT_SERIAL_NAME, sm_downcase_name(), SM_MAX_IDENTIFIER_LENGTH, strlen, ws_decache(), and WS_ISDIRTY.
Referenced by dbt_rename(), do_change_att_schema_only(), and sm_rename_class().
int do_update_maxvalue_of_auto_increment_serial | ( | PARSER_CONTEXT * | parser, |
MOP * | serial_object, | ||
const char * | class_name, | ||
PT_NODE * | att | ||
) |
Definition at line 2022 of file execute_statement.c.
References parser_node::alias_print, ARG_FILE_LINE, assert, assert_release, pt_statement_info::attr_def, pt_attr_def_info::attr_name, AU_DISABLE, AU_ENABLE, au_fetch_instance_force(), AU_FETCH_WRITE, pt_attr_def_info::auto_increment, AUTO_INCREMENT_SERIAL_NAME_EXTRA_LENGTH, CT_SERIAL_NAME, pt_statement_info::data_type, parser_node::data_type, DB_BIGINT_MAX, DB_EQ, db_get(), DB_INT16_MAX, DB_INT32_MAX, DB_LT, db_make_bigint(), db_make_int(), db_make_null(), DB_MAX_NUMERIC_PRECISION, DB_SERIAL_MAX, DB_TYPE_NUMERIC, db_value_clone(), db_value_domain_init(), dbt_abort_object(), dbt_edit_object(), dbt_finish_object(), dbt_put_internal(), do_get_serial_obj_id(), ER_AUTO_INCREMENT_STARTVAL_MUST_LT_MAXVAL, er_errid(), ER_ERROR_SEVERITY, ER_OUT_OF_VIRTUAL_MEMORY, ER_QPROC_DB_SERIAL_NOT_FOUND, ER_QPROC_SERIAL_NOT_FOUND, er_set(), error(), free_and_init, i, parser_node::info, INTL_CODESET_ISO88591, LC_FETCH_MVCC_VERSION, pt_statement_info::name, NO_ERROR, NULL, numeric_coerce_string_to_num(), numeric_db_value_coerce_to_num(), OID_ISNULL, OID_SET_NULL, pt_name_info::original, p, pr_clear_value(), pt_data_type_info::precision, PT_TYPE_BIGINT, PT_TYPE_INTEGER, PT_TYPE_NUMERIC, PT_TYPE_SMALLINT, SERIAL_ATTR_CURRENT_VAL, SERIAL_ATTR_MAX_VAL, serial_decache(), SET_AUTO_INCREMENT_SERIAL_NAME, sm_downcase_name(), sm_find_class(), SM_MAX_IDENTIFIER_LENGTH, strlen, tp_value_compare(), parser_node::type_enum, ws_decache(), and WS_ISDIRTY.
Referenced by do_change_att_schema_only().
int do_update_stats | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | statement | ||
) |
Definition at line 4003 of file execute_statement.c.
References pt_update_stats_info::all_classes, ARG_FILE_LINE, ASSERT_ERROR_AND_SET, AU_ALTER, au_check_authorization(), au_is_dba_group_member(), Au_user, CHECK_MODIFICATION_ERROR, pt_update_stats_info::class_list, db_find_class(), pt_name_info::db_object, ER_AU_ALTER_FAILURE, ER_AU_DBA_ONLY, ER_ERROR_SEVERITY, er_set(), error(), parser_node::info, pt_statement_info::name, parser_node::next, NO_ERROR, NULL, pt_name_info::original, pt_check_user_owns_class(), sm_update_all_catalog_statistics(), sm_update_all_statistics(), sm_update_statistics(), STATS_WITH_FULLSCAN, STATS_WITH_SAMPLING, pt_statement_info::update_stats, and pt_update_stats_info::with_fullscan.
Referenced by do_execute_statement(), and do_statement().
Definition at line 359 of file execute_statement.c.
References pt_statement_info::delete_, pt_delete_info::hint, pt_insert_info::hint, pt_update_info::hint, parser_node::info, pt_statement_info::insert, parser_node::node_type, PT_DELETE, PT_DROP_VARIABLE, PT_HINT_USE_SBR, PT_INSERT, pt_is_ddl_statement(), PT_TRUNCATE, PT_UPDATE, and pt_statement_info::update.
Referenced by do_execute_statement(), and do_statement().
bool do_Trigger_involved |
Definition at line 2932 of file execute_statement.c.
Referenced by db_execute_and_keep_statement_local(), delete_list_by_oids(), do_execute_statement(), do_insert_at_server(), do_scope(), insert_local(), is_server_insert_allowed(), locator_lock(), populate_auto_increment(), and update_object_tuple().