CUBRID Engine
latest
|
#include "config.h"
#include <stdlib.h>
#include <string.h>
#include <stdarg.h>
#include <sys/timeb.h>
#include <time.h>
#include <assert.h>
#include "authenticate.h"
#include "db.h"
#include "dbi.h"
#include "db_query.h"
#include "error_manager.h"
#include "chartype.h"
#include "system_parameter.h"
#include "environment_variable.h"
#include "memory_alloc.h"
#include "parser.h"
#include "parser_message.h"
#include "object_domain.h"
#include "object_primitive.h"
#include "schema_manager.h"
#include "view_transform.h"
#include "execute_statement.h"
#include "locator_cl.h"
#include "server_interface.h"
#include "api_compat.h"
#include "network_interface_cl.h"
#include "transaction_cl.h"
#include "dbtype.h"
#include "util_func.h"
#include "xasl.h"
Go to the source code of this file.
Macros | |
#define | BUF_SIZE 1024 |
#define | MAX_SERVER_TIME_CACHE 60 /* secs */ |
Enumerations | |
enum | { StatementInitialStage = 0, StatementCompiledStage, StatementPreparedStage, StatementExecutedStage } |
Variables | |
static struct timeb | base_server_timeb = { 0, 0, 0, 0 } |
static struct timeb | base_client_timeb = { 0, 0, 0, 0 } |
#define BUF_SIZE 1024 |
Definition at line 59 of file db_vdb.c.
Referenced by db_validate().
#define MAX_SERVER_TIME_CACHE 60 /* secs */ |
Definition at line 61 of file db_vdb.c.
Referenced by db_calculate_current_server_time().
anonymous enum |
|
static |
Definition at line 2251 of file db_vdb.c.
References i, NULL, parser_append_node(), and pt_name().
Referenced by do_get_prepared_statement_info().
|
static |
Definition at line 2066 of file db_vdb.c.
References assert, NULL, and execution_state_values::row_count.
Definition at line 3813 of file db_vdb.c.
References pt_associate_label_with_value_check_reference().
|
static |
Definition at line 421 of file db_vdb.c.
References base_client_timeb, base_server_timeb, db_calculate_current_time(), db_datetime_encode(), db_make_datetime(), db_make_timestamp(), MAX_SERVER_TIME_CACHE, NULL, parser_context::sys_datetime, and parser_context::sys_epochtime.
Referenced by db_execute_and_keep_statement_local().
|
static |
Definition at line 402 of file db_vdb.c.
References assert, and util_get_second_and_ms_since_epoch().
Referenced by db_calculate_current_server_time(), and db_set_base_server_time().
|
static |
Definition at line 4127 of file db_vdb.c.
References pt_union_info::arg1, pt_union_info::arg2, assert, pt_delete_info::del_stmt_list, pt_statement_info::delete_, pt_delete_info::execute_with_commit_allowed, pt_insert_info::execute_with_commit_allowed, pt_update_info::execute_with_commit_allowed, pt_merge_info::flags, pt_select_info::hint, parser_node::info, pt_statement_info::insert, pt_query_info::into_list, pt_select_info::list, pt_statement_info::merge, parser_node::node_type, NULL, pt_query_info::oids_included, parser_walk_tree(), PT_DELETE, PT_DIFFERENCE, pt_has_name_oid(), PT_HINT_SELECT_BTREE_NODE_INFO, PT_HINT_SELECT_KEY_INFO, PT_HINT_SELECT_PAGE_INFO, PT_INSERT, PT_INTERSECTION, PT_MERGE, PT_MERGE_INFO_SERVER_OP, PT_SELECT, PT_UNION, PT_UPDATE, pt_query_info::q, pt_statement_info::query, pt_query_info::select, pt_query_info::union_, and pt_statement_info::update.
Referenced by db_set_statement_auto_commit().
|
static |
Definition at line 2647 of file db_vdb.c.
References assert, parser_context::auto_param_count, parser_varchar::bytes, CUBRID_STMT_SELECT, pt_value_info::data_value, db_close_session(), db_open_buffer_local(), db_session::dimension, pt_statement_info::execute, parser_context::flag, parser_context::host_var_count, parser_context::host_var_expected_domains, parser_context::host_variables, parser_node::info, parser_node::node_type, NULL, db_session::parser, PT_EXECUTE_PREPARE, PT_IS_QUERY, pt_recompile_for_limit_optimizations(), PT_TYPE_CHAR, PT_VALUE, pt_execute_info::query, parser_context::set_host_var, db_session::statements, pt_execute_info::stmt_type, pt_data_value::str, parser_node::type_enum, and pt_statement_info::value.
Referenced by do_get_prepared_statement_info().
int db_check_single_query | ( | DB_SESSION * | session | ) |
Definition at line 3695 of file db_vdb.c.
References db_session::dimension, ER_IT_MULTIPLE_STATEMENT, and NO_ERROR.
Referenced by do_process_prepare_statement(), ux_execute(), ux_execute_all(), and ux_execute_call().
void db_close_session | ( | DB_SESSION * | session | ) |
Definition at line 3319 of file db_vdb.c.
References db_close_session_local().
Referenced by alloc_dynamic(), au_compute_groups(), au_delete_auth_of_dropping_table(), au_drop_user(), au_get_new_auth(), csql_display_trace(), csql_execute_statements(), db_check_limit_need_recompile(), do_check_rows_for_null(), do_run_update_query_for_class(), fn_get_query_info(), free_cursor(), free_dynamic(), free_repetitive(), hm_session_free(), ldr_exec_query_from_file(), sch_query_execute(), sm_truncate_using_delete(), tzc_compute_timezone_checksum(), uci_execute_immediate(), uci_open_cs(), uci_prepare(), uci_static(), ux_execute_array(), ux_execute_batch(), and ux_prepare().
void db_close_session_local | ( | DB_SESSION * | session | ) |
Definition at line 3244 of file db_vdb.c.
References assert, parser_context::auto_param_count, db_free_query_format(), db_value_clear(), db_session::dimension, free_and_init, parser_context::host_var_count, parser_context::host_var_expected_domains, parser_context::host_variables, i, db_session::is_subsession_for_prepared, db_session::next, NULL, db_session::parser, parser, parser_free_parser(), parser_free_tree(), pt_free_orphans(), pt_free_statement_xasl_id(), db_session::statements, db_session::stmt_ndx, and db_session::type_list.
Referenced by db_close_session(), db_compile_and_execute_queries_internal(), db_execute_with_values(), db_open_buffer_and_compile_first_statement(), do_process_prepare_statement(), stmt_destroyf(), stmt_exec_batch_query_internal(), and stmt_reset_session_and_parse().
int db_compile_and_execute_local | ( | const char * | CSQL_query, |
void * | result, | ||
DB_QUERY_ERROR * | query_error | ||
) |
Definition at line 3068 of file db_vdb.c.
References db_compile_and_execute_queries_internal(), and DB_NO_OIDS.
Referenced by au_dump_auth(), au_dump_to_file(), au_dump_user(), au_export_users(), au_find_user(), build_class_grant_list(), collect_class_grants(), db_validate(), do_check_internal_statements(), do_redistribute_partitions_data(), export_serial(), synccoll_check(), and vid_getall_mops().
int db_compile_and_execute_queries_internal | ( | const char * | CSQL_query, |
void * | result, | ||
DB_QUERY_ERROR * | query_error, | ||
int | include_oid, | ||
int | execute, | ||
bool | is_new_statement | ||
) |
Definition at line 3096 of file db_vdb.c.
References db_close_session_local(), db_compile_statement_local(), db_execute_statement_local(), db_get_query_type_list(), db_invalidate_mvcc_snapshot_before_statement(), db_open_buffer_and_compile_first_statement(), db_set_read_fetch_instance_version(), error(), LC_FETCH_MVCC_VERSION, and NULL.
Referenced by db_compile_and_execute_local(), db_execute(), db_execute_oid(), db_get_query_format(), and db_query_execute().
int db_compile_statement | ( | DB_SESSION * | session | ) |
Definition at line 766 of file db_vdb.c.
References CHECK_CONNECT_MINUSONE, db_compile_statement_local(), and er_clear().
Referenced by au_compute_groups(), au_drop_user(), au_get_new_auth(), csql_display_trace(), csql_execute_statements(), do_check_rows_for_null(), do_recompile_and_execute_prepared_statement(), do_run_update_query_for_class(), fn_get_query_info(), ldr_exec_query_from_file(), sch_query_execute(), sm_truncate_using_delete(), tzc_compute_timezone_checksum(), uci_execute_immediate(), uci_open_cs(), uci_prepare(), uci_static(), ux_execute(), ux_execute_all(), ux_execute_array(), ux_execute_batch(), and ux_prepare().
int db_compile_statement_local | ( | DB_SESSION * | session | ) |
Definition at line 510 of file db_vdb.c.
References ARG_FILE_LINE, parser_node::cannot_prepare, db_query_type::col_type, CUBRID_STMT_EXECUTE_PREPARE, CUBRID_STMT_SELECT, DB_COL_PATH, DB_NO_OIDS, DB_ROW_OIDS, db_session::dimension, do_cast_host_variables_to_expected_domain(), do_get_prepared_statement_info(), pt_query_info::do_not_cache, do_prepare_statement(), er_clear(), er_errid(), ER_ERROR_SEVERITY, ER_IT_EMPTY_STATEMENT, ER_IT_INVALID_SESSION, ER_OUT_OF_VIRTUAL_MEMORY, ER_QPROC_INVALID_XASLNODE, er_set(), ER_WARNING_SEVERITY, err, pt_query_info::flag, parser_node::flag, parser_context::flag, db_session::include_oid, parser_node::info, db_session::is_subsession_for_prepared, parser_node::is_system_generated_stmt, parser_context::is_system_generated_stmt, mq_translate(), mq_updatable(), db_query_type::next, NO_ERROR, NULL, p, db_session::parser, parser, prm_get_integer_value(), PRM_ID_XASL_CACHE_MAX_ENTRIES, pt_add_row_oid(), pt_class_pre_fetch(), pt_compile(), pt_fillin_type_size(), pt_get_titles(), pt_has_error, pt_node_to_cmd_type(), pt_report_to_ersys(), pt_report_to_ersys_with_statement(), pt_reset_error(), PT_SEMANTIC, PT_SYNTAX, PT_UPDATABLE, pt_statement_info::query, parser_context::set_host_var, db_session::stage, StatementCompiledStage, StatementPreparedStage, db_session::statements, db_session::stmt_ndx, db_session::type_list, parser_node::use_plan_cache, parser_node::use_query_cache, and parser_node::xasl_id.
Referenced by au_delete_auth_of_dropping_table(), db_compile_and_execute_queries_internal(), db_compile_statement(), db_execute_and_keep_statement_local(), db_open_buffer_and_compile_first_statement(), do_process_prepare_statement(), stmt_exec_batch_query_internal(), stmt_exec_one_statement(), and stmt_prepare_internal().
void db_drop_all_statements | ( | DB_SESSION * | session | ) |
Definition at line 3218 of file db_vdb.c.
References db_session::dimension, NULL, db_session::parser, parser_free_tree(), pt_free_statement_xasl_id(), db_session::stage, StatementInitialStage, db_session::statements, and db_session::stmt_ndx.
void db_drop_statement | ( | DB_SESSION * | session, |
int | stmt | ||
) |
Definition at line 3196 of file db_vdb.c.
References NULL, db_session::parser, parser_free_tree(), pt_free_statement_xasl_id(), db_session::stage, StatementInitialStage, and db_session::statements.
Referenced by csql_execute_statements().
int db_execute_and_keep_statement | ( | DB_SESSION * | session, |
int | stmt_ndx, | ||
DB_QUERY_RESULT ** | result | ||
) |
Definition at line 2906 of file db_vdb.c.
References CHECK_CONNECT_MINUSONE, db_execute_and_keep_statement_local(), db_invalidate_mvcc_snapshot_before_statement(), db_set_read_fetch_instance_version(), err, and LC_FETCH_MVCC_VERSION.
Referenced by stmt_exec_internal(), stmt_exec_one_statement(), stmt_exec_prepared_batch_internal(), uci_execute(), uci_open_cs(), ux_execute(), ux_execute_all(), ux_execute_array(), and ux_execute_call().
|
static |
Definition at line 1599 of file db_vdb.c.
References ARG_FILE_LINE, assert, parser_context::auto_param_count, base_server_timeb, parser_node::cannot_prepare, parser_node::clt_cache_reusable, CUBRID_MAX_STMT_TYPE, CUBRID_STMT_CALL, CUBRID_STMT_DO, CUBRID_STMT_EVALUATE, CUBRID_STMT_EXECUTE_PREPARE, CUBRID_STMT_GET_ISO_LVL, CUBRID_STMT_GET_OPT_LVL, CUBRID_STMT_GET_STATS, CUBRID_STMT_GET_TIMEOUT, CUBRID_STMT_GET_TRIGGER, CUBRID_STMT_INSERT, CUBRID_STMT_SELECT, db_calculate_current_server_time(), DB_CLASS_ERROR, DB_CLASS_MODIFIED, DB_CLASS_NOT_MODIFIED, db_compile_statement_local(), db_cp_query_type(), db_get_db_value_query_result(), DB_IS_NULL, db_make_null(), db_make_object(), db_query_tuple_count(), db_set_base_server_time(), DB_TYPE_OBJECT, db_value_create(), DB_VALUE_DOMAIN_TYPE, db_value_free(), db_session::dimension, do_execute_statement(), do_prepare_statement(), do_process_deallocate_prepare(), do_process_prepare_statement(), do_recompile_and_execute_prepared_statement(), pt_insert_info::do_replace, do_statement(), do_Trigger_involved, semantic_chk_info::donot_fold, er_clear(), ER_DO_UNKNOWN_HOSTVAR_TYPE, er_errid(), ER_ERROR_SEVERITY, ER_IT_EMPTY_STATEMENT, ER_IT_INVALID_SESSION, ER_OBJ_INVALID_ARGUMENTS, ER_QPROC_INVALID_XASLNODE, ER_QPROC_XASLNODE_RECOMPILE_REQUESTED, er_set(), ER_UCI_TOO_FEW_HOST_VARS, ER_WARNING_SEVERITY, err, pt_statement_info::execute, parser_node::flag, parser_context::flag, parser_context::host_var_count, parser_node::info, pt_statement_info::insert, parser_context::is_in_and_list, parser_context::local_transaction_id, mq_reset_ids_in_statement(), NO_ERROR, parser_node::node_type, NULL, db_session::parser, parser, parser_copy_tree_list(), parser_free_tree(), prm_get_integer_value(), PRM_ID_XASL_CACHE_MAX_ENTRIES, PT_ALTER, pt_bind_values_to_hostvars(), PT_CREATE_ENTITY, PT_DEALLOCATE_PREPARE, PT_EXECUTE_PREPARE, PT_EXECUTION, pt_free_query_etc_area(), pt_free_statement_xasl_id(), pt_has_error, pt_has_modified_class(), pt_is_server_insert_with_generated_keys(), pt_make_cache_hit_result_descriptor(), pt_new_query_result_descriptor(), pt_node_etc(), pt_node_to_cmd_type(), pt_null_etc(), PT_PREPARE_STATEMENT, pt_report_to_ersys(), pt_report_to_ersys_with_statement(), pt_reset_error(), pt_resolve_names(), PT_SEMANTIC, pt_semantic_type(), PT_SYNTAX, qp_get_server_info(), parser_context::query_id, db_query_result::query_type, pt_execute_info::recompile, db_query_result::res, db_query_result::s, pt_insert_info::server_allowed, SERVER_INSERT_IS_ALLOWED, parser_context::set_host_var, parser_node::si_datetime, SI_LOCAL_TRANSACTION_ID, SI_SYS_DATETIME, parser_node::si_tran_id, db_session::stage, StatementExecutedStage, StatementPreparedStage, db_session::statements, db_select_result::stmt_id, db_session::stmt_ndx, pt_execute_info::stmt_type, parser_context::sys_datetime, parser_context::sys_epochtime, semantic_chk_info::top_node, db_session::type_list, update_execution_values(), parser_node::xasl_id, and XASL_ID_IS_NULL.
Referenced by db_execute_and_keep_statement(), db_execute_statement_local(), and do_recompile_and_execute_prepared_statement().
int db_execute_statement | ( | DB_SESSION * | session, |
int | stmt_ndx, | ||
DB_QUERY_RESULT ** | result | ||
) |
Definition at line 2978 of file db_vdb.c.
References CHECK_CONNECT_MINUSONE, db_execute_statement_local(), db_invalidate_mvcc_snapshot_before_statement(), db_set_read_fetch_instance_version(), err, and LC_FETCH_MVCC_VERSION.
Referenced by csql_display_trace(), csql_execute_statements(), fn_get_query_info(), ldr_exec_query_from_file(), sch_query_execute(), uci_execute_immediate(), uci_static(), and ux_execute_batch().
int db_execute_statement_local | ( | DB_SESSION * | session, |
int | stmt_ndx, | ||
DB_QUERY_RESULT ** | result | ||
) |
Definition at line 2939 of file db_vdb.c.
References ARG_FILE_LINE, db_execute_and_keep_statement_local(), ER_OBJ_INVALID_ARGUMENTS, er_set(), ER_WARNING_SEVERITY, err, NULL, db_session::parser, parser_free_tree(), pt_free_statement_xasl_id(), and db_session::statements.
Referenced by au_compute_groups(), au_delete_auth_of_dropping_table(), au_drop_user(), au_get_new_auth(), db_compile_and_execute_queries_internal(), db_execute_statement(), db_execute_with_values(), do_check_rows_for_null(), do_run_update_query_for_class(), sm_truncate_using_delete(), stmt_exec_batch_query_internal(), and tzc_compute_timezone_checksum().
void db_free_query | ( | DB_SESSION * | session | ) |
Definition at line 3683 of file db_vdb.c.
References db_session::parser, and pt_end_query().
Referenced by csql_execute_statements(), do_run_update_query_for_class(), and sm_truncate_using_delete().
|
static |
Definition at line 3337 of file db_vdb.c.
References au_check_user(), DB_FETCH_READ, i, locator_free_list_mops(), locator_get_all_class_mops(), ml_ext_alloc_link(), ml_ext_free(), list_mops::mops, db_objlist::next, NO_ERROR, NULL, list_mops::num, db_objlist::op, p, sm_Root_class_mop, and WS_IS_DELETED.
Referenced by db_get_all_vclasses().
DB_OBJLIST* db_get_all_vclasses | ( | void | ) |
Definition at line 3423 of file db_vdb.c.
References db_get_all_chosen_classes(), and is_vclass_object().
DB_OBJLIST* db_get_all_vclasses_on_ldb | ( | void | ) |
bool db_get_cacheinfo | ( | DB_SESSION * | session, |
int | stmt_ndx, | ||
bool * | use_plan_cache, | ||
bool * | use_query_cache | ||
) |
Definition at line 878 of file db_vdb.c.
References db_session::dimension, parser_node::flag, db_session::parser, db_session::statements, parser_node::use_plan_cache, and parser_node::use_query_cache.
Referenced by ux_execute(), ux_execute_all(), ux_execute_array(), ux_execute_batch(), and ux_prepare().
DB_SESSION_ERROR* db_get_errors | ( | DB_SESSION * | session | ) |
Definition at line 926 of file db_vdb.c.
References NULL, db_session::parser, and pt_get_errors().
Referenced by csql_display_session_err(), csql_execute_statements(), db_open_buffer_and_compile_first_statement(), do_check_rows_for_null(), do_run_update_query_for_class(), ldr_exec_query_from_file(), sm_truncate_using_delete(), and stmt_make_error_info().
DB_VALUE* db_get_hostvars | ( | DB_SESSION * | session | ) |
Definition at line 1562 of file db_vdb.c.
References parser_context::host_variables, and db_session::parser.
Referenced by ux_execute_all(), and ux_execute_call().
DB_MARKER* db_get_input_markers | ( | DB_SESSION * | session, |
int | stmt | ||
) |
Definition at line 1179 of file db_vdb.c.
References ARG_FILE_LINE, db_session::dimension, ER_OBJ_INVALID_ARGUMENTS, er_set(), ER_WARNING_SEVERITY, NULL, db_session::parser, parser, pt_free_host_info(), pt_get_input_host_vars(), pt_has_error, pt_host_info(), and db_session::statements.
Referenced by stmt_bind_pmeta_handle(), and ux_get_parameter_info().
bool db_get_jdbccachehint | ( | DB_SESSION * | session, |
int | stmt_ndx, | ||
int * | life_time | ||
) |
Definition at line 844 of file db_vdb.c.
References db_session::dimension, pt_select_info::hint, parser_node::info, pt_select_info::jdbc_life_time, pt_statement_info::name, NULL, pt_name_info::original, db_session::parser, PT_HINT_JDBC_CACHE, pt_query_info::q, pt_statement_info::query, pt_query_info::select, and db_session::statements.
Referenced by get_client_result_cache_lifetime().
int db_get_line_col_of_1st_error | ( | DB_SESSION * | session, |
DB_QUERY_ERROR * | linecol | ||
) |
Definition at line 1095 of file db_vdb.c.
References db_query_error::err_lineno, db_query_error::err_posno, errors, db_session::parser, pt_get_errors(), pt_get_next_error(), and pt_has_error.
int db_get_line_of_statement | ( | DB_SESSION * | session, |
int | stmt_id | ||
) |
Definition at line 4236 of file db_vdb.c.
References assert, db_session::dimension, parser_node::line_number, NULL, and db_session::statements.
Referenced by ldr_exec_query_from_file().
char** db_get_lock_classes | ( | DB_SESSION * | session | ) |
Definition at line 1573 of file db_vdb.c.
References parser_context::lcks_classes, NULL, and db_session::parser.
DB_SESSION_ERROR* db_get_next_error | ( | DB_SESSION_ERROR * | errors, |
int * | line, | ||
int * | col | ||
) |
Definition at line 953 of file db_vdb.c.
References ARG_FILE_LINE, ER_PT_ERROR, er_set(), ER_SYNTAX_ERROR_SEVERITY, NULL, and pt_get_next_error().
Referenced by csql_display_session_err(), db_open_buffer_and_compile_first_statement(), ldr_exec_query_from_file(), stmt_exec_batch_query_internal(), and stmt_make_error_info().
DB_SESSION_WARNING* db_get_next_warning | ( | DB_SESSION_WARNING * | warnings, |
int * | line, | ||
int * | col | ||
) |
Definition at line 1013 of file db_vdb.c.
References ARG_FILE_LINE, ER_PT_ERROR, er_set(), ER_WARNING_SEVERITY, NULL, and pt_get_next_error().
DB_MARKER* db_get_output_markers | ( | DB_SESSION * | session, |
int | stmt | ||
) |
Definition at line 1209 of file db_vdb.c.
References ARG_FILE_LINE, db_session::dimension, ER_OBJ_INVALID_ARGUMENTS, er_set(), ER_WARNING_SEVERITY, NULL, db_session::parser, parser, pt_free_host_info(), pt_get_output_host_vars(), pt_has_error, pt_host_info(), and db_session::statements.
DB_PARAMETER* db_get_parameters | ( | DB_SESSION * | session, |
int | statement_id | ||
) |
Definition at line 3744 of file db_vdb.c.
References ARG_FILE_LINE, db_session::dimension, ER_OBJ_INVALID_ARGUMENTS, er_set(), ER_WARNING_SEVERITY, NULL, db_session::parser, pt_get_parameters(), pt_has_error, and db_session::statements.
PARSER_CONTEXT* db_get_parser | ( | DB_SESSION * | session | ) |
Definition at line 3714 of file db_vdb.c.
References db_session::parser.
Referenced by do_run_update_query_for_class(), and uci_static().
int db_get_parser_line_col | ( | DB_SESSION * | session, |
int * | line, | ||
int * | col | ||
) |
Definition at line 355 of file db_vdb.c.
References parser_context::column, parser_context::line, and db_session::parser.
DB_QUERY_TYPE* db_get_query_type_list | ( | DB_SESSION * | session, |
int | stmt_ndx | ||
) |
Definition at line 1341 of file db_vdb.c.
References ARG_FILE_LINE, CUBRID_STMT_CALL, CUBRID_STMT_GET_ISO_LVL, CUBRID_STMT_GET_OPT_LVL, CUBRID_STMT_GET_TIMEOUT, CUBRID_STMT_GET_TRIGGER, CUBRID_STMT_INSERT, CUBRID_STMT_SELECT, db_alloc_query_format(), db_cp_query_type(), db_query_type::db_type, DB_TYPE_INTEGER, DB_TYPE_OBJECT, db_session::dimension, ER_IT_EMPTY_STATEMENT, ER_IT_INVALID_SESSION, ER_OBJ_INVALID_ARGUMENTS, er_set(), ER_WARNING_SEVERITY, EXCLUDE_HIDDEN_COLUMNS, parser_node::node_type, NULL, db_session::parser, PT_EXECUTE_PREPARE, pt_get_select_list(), pt_length_of_select_list(), pt_node_to_cmd_type(), pt_node_to_db_type(), db_session::stage, StatementPreparedStage, db_session::statements, and db_session::type_list.
Referenced by csql_execute_statements(), db_compile_and_execute_queries_internal(), prepare_column_list_info_set(), stmt_bind_resultset_meta_handle(), uci_prepare(), and ux_use_sp_out().
DB_QUERY_TYPE* db_get_query_type_ptr | ( | DB_QUERY_RESULT * | result | ) |
Definition at line 1431 of file db_vdb.c.
References db_query_result::query_type.
Referenced by csql_execute_statements().
int db_get_start_line | ( | DB_SESSION * | session, |
int | stmt | ||
) |
Definition at line 1444 of file db_vdb.c.
References ARG_FILE_LINE, db_session::dimension, er_errid(), ER_OBJ_INVALID_ARGUMENTS, er_set(), ER_WARNING_SEVERITY, db_session::parser, parser, pt_statement_line_number(), and db_session::statements.
Referenced by ci_stmt_get_start_line_impl(), and csql_execute_statements().
DB_NODE* db_get_statement | ( | DB_SESSION * | session, |
int | id | ||
) |
Definition at line 3729 of file db_vdb.c.
References db_session::statements.
Referenced by uci_static().
int db_get_statement_type | ( | DB_SESSION * | session, |
int | stmt | ||
) |
Definition at line 1473 of file db_vdb.c.
References ARG_FILE_LINE, db_session::dimension, er_errid(), ER_OBJ_INVALID_ARGUMENTS, er_set(), ER_WARNING_SEVERITY, pt_statement_info::execute, parser_node::info, parser_node::node_type, NULL, db_session::parser, parser, PT_EXECUTE_PREPARE, pt_node_to_cmd_type(), db_session::statements, and pt_execute_info::stmt_type.
Referenced by csql_execute_statements(), get_client_result_cache_lifetime(), ldr_exec_query_from_file(), sch_query_execute(), stmt_exec_one_statement(), stmt_exec_prepared_batch_internal(), stmt_prepare_internal(), uci_execute_immediate(), uci_open_cs(), uci_prepare(), uci_static(), ux_execute(), ux_execute_all(), ux_execute_array(), ux_execute_batch(), ux_execute_call(), and ux_prepare().
DB_SESSION_WARNING* db_get_warnings | ( | DB_SESSION * | session | ) |
Definition at line 985 of file db_vdb.c.
References NULL, db_session::parser, and pt_get_warnings().
DB_CLASS_MODIFICATION_STATUS db_has_modified_class | ( | DB_SESSION * | session, |
int | stmt_id | ||
) |
Definition at line 2874 of file db_vdb.c.
References assert, DB_CLASS_NOT_MODIFIED, NULL, db_session::parser, pt_has_modified_class(), and db_session::statements.
Referenced by set_host_variables().
void db_include_oid | ( | DB_SESSION * | session, |
int | include_oid | ||
) |
Definition at line 1508 of file db_vdb.c.
References db_session::include_oid.
Referenced by db_open_buffer_and_compile_first_statement(), uci_open_cs(), and ux_prepare().
void db_invalidate_mvcc_snapshot_before_statement | ( | void | ) |
Definition at line 3881 of file db_vdb.c.
References tm_Tran_invalidate_snapshot, TM_TRAN_ISOLATION, TRAN_REPEATABLE_READ, and ws_increment_mvcc_snapshot_version().
Referenced by db_compile_and_execute_queries_internal(), db_execute_and_keep_statement(), and db_execute_statement().
Definition at line 1299 of file db_vdb.c.
References pt_is_input_hostvar.
Definition at line 1318 of file db_vdb.c.
References pt_is_output_hostvar.
DB_SESSION* db_make_session_for_one_statement_execution | ( | FILE * | file | ) |
Definition at line 276 of file db_vdb.c.
References CHECK_CONNECT_NULL, db_open_local(), parse_one_statement(), db_session::parser, and pt_init_one_statement_parser().
Referenced by ldr_exec_query_from_file().
Definition at line 1276 of file db_vdb.c.
References parser_node::expected_domain, NULL, and pt_node_to_db_domain().
Referenced by ux_get_parameter_info().
int db_marker_index | ( | DB_MARKER * | marker | ) |
Definition at line 1257 of file db_vdb.c.
References pt_host_var_index().
Definition at line 1238 of file db_vdb.c.
References NULL, and pt_node_next().
Referenced by ux_get_parameter_info().
int db_number_of_input_markers | ( | DB_SESSION * | session, |
int | stmt | ||
) |
Definition at line 1125 of file db_vdb.c.
References ARG_FILE_LINE, db_session::dimension, er_errid(), ER_OBJ_INVALID_ARGUMENTS, er_set(), ER_WARNING_SEVERITY, parser_context::host_var_count, db_session::parser, parser, and db_session::statements.
Referenced by uci_execute_immediate(), uci_open_cs(), and uci_prepare().
int db_number_of_output_markers | ( | DB_SESSION * | session, |
int | stmt | ||
) |
Definition at line 1152 of file db_vdb.c.
References ARG_FILE_LINE, db_session::dimension, er_errid(), ER_OBJ_INVALID_ARGUMENTS, er_set(), ER_WARNING_SEVERITY, NULL, db_session::parser, parser, parser_walk_tree(), pt_count_output_markers(), and db_session::statements.
DB_SESSION* db_open_buffer | ( | const char * | buffer | ) |
Definition at line 232 of file db_vdb.c.
References CHECK_1ARG_NULL, CHECK_CONNECT_NULL, and db_open_buffer_local().
Referenced by au_compute_groups(), au_drop_user(), au_get_new_auth(), csql_display_trace(), csql_execute_statements(), do_check_rows_for_null(), do_run_update_query_for_class(), fn_get_query_info(), sch_query_execute(), sm_truncate_using_delete(), tzc_compute_timezone_checksum(), uci_execute_immediate(), uci_open_cs(), uci_prepare(), uci_static(), ux_execute(), ux_execute_all(), ux_execute_array(), ux_execute_batch(), and ux_prepare().
int db_open_buffer_and_compile_first_statement | ( | const char * | CSQL_query, |
DB_QUERY_ERROR * | query_error, | ||
int | include_oid, | ||
DB_SESSION ** | session, | ||
int * | stmt_no | ||
) |
Definition at line 3007 of file db_vdb.c.
References assert, CHECK_CONNECT_ERROR, db_close_session_local(), db_compile_statement_local(), db_get_errors(), db_get_next_error(), db_include_oid(), db_open_buffer_local(), er_errid(), db_query_error::err_lineno, db_query_error::err_posno, error(), NO_ERROR, and NULL.
Referenced by db_compile_and_execute_queries_internal(), and db_execute_with_values().
DB_SESSION* db_open_buffer_local | ( | const char * | buffer | ) |
Definition at line 205 of file db_vdb.c.
References CHECK_1ARG_NULL, db_open_local(), initialize_session(), db_session::parser, parser_parse_string_with_escapes(), and db_session::statements.
Referenced by au_delete_auth_of_dropping_table(), db_check_limit_need_recompile(), db_open_buffer(), db_open_buffer_and_compile_first_statement(), do_process_prepare_statement(), and do_recompile_and_execute_prepared_statement().
DB_SESSION* db_open_file | ( | FILE * | file | ) |
Definition at line 251 of file db_vdb.c.
References CHECK_CONNECT_NULL, db_open_local(), initialize_session(), db_session::parser, parser_parse_file(), and db_session::statements.
Referenced by csql_execute_statements().
DB_SESSION* db_open_file_name | ( | const char * | name | ) |
Definition at line 376 of file db_vdb.c.
References CHECK_CONNECT_NULL, db_open_local(), initialize_session(), NULL, db_session::parser, parser_parse_file(), and db_session::statements.
|
static |
Definition at line 151 of file db_vdb.c.
References ARG_FILE_LINE, assert, DB_NO_OIDS, db_session::dimension, ER_ERROR_SEVERITY, ER_OUT_OF_VIRTUAL_MEMORY, er_set(), free_and_init, db_session::include_oid, db_session::is_subsession_for_prepared, db_session::line_offset, db_session::next, NULL, db_session::parser, parser_create_parser(), parser_context::query_id, db_session::stage, db_session::statements, db_session::stmt_ndx, and db_session::type_list.
Referenced by db_make_session_for_one_statement_execution(), db_open_buffer_local(), db_open_file(), and db_open_file_name().
const char* db_parameter_name | ( | DB_PARAMETER * | param | ) |
Definition at line 3791 of file db_vdb.c.
References NULL, and pt_string_part().
DB_PARAMETER* db_parameter_next | ( | DB_PARAMETER * | param | ) |
Definition at line 3772 of file db_vdb.c.
References NULL, and pt_node_next().
int db_parse_one_statement | ( | DB_SESSION * | session | ) |
Definition at line 298 of file db_vdb.c.
References db_free_query_format(), db_session::dimension, get_dimension_of(), parser_context::node_stack, NULL, parse_one_statement(), db_session::parser, parser_alloc(), parser_free_tree(), pt_has_error, parser_context::stack_top, db_session::stage, StatementInitialStage, db_session::statements, parser_context::statements, db_session::stmt_ndx, and db_session::type_list.
Referenced by ldr_exec_query_from_file().
int db_push_values | ( | DB_SESSION * | session, |
int | count, | ||
DB_VALUE * | in_values | ||
) |
Definition at line 1527 of file db_vdb.c.
References ER_PT_SEMANTIC, parser_context::flag, parser_context::host_var_count, NO_ERROR, db_session::parser, parser, pt_has_error, pt_report_to_ersys(), pt_reset_error(), PT_SEMANTIC, pt_set_host_variables(), and parser_context::set_host_var.
Referenced by au_compute_groups(), au_delete_auth_of_dropping_table(), au_drop_user(), au_get_new_auth(), db_execute_with_values(), do_set_user_host_variables(), set_host_variables(), stmt_exec_internal(), stmt_exec_prepared_batch_internal(), uci_execute(), uci_execute_immediate(), uci_open_cs(), and uci_static().
int db_query_produce_updatable_result | ( | DB_SESSION * | session, |
int | stmt_ndx | ||
) |
Definition at line 3825 of file db_vdb.c.
References ARG_FILE_LINE, db_session::dimension, er_errid(), ER_IT_EMPTY_STATEMENT, ER_IT_INVALID_SESSION, ER_OBJ_INVALID_ARGUMENTS, er_set(), ER_WARNING_SEVERITY, parser_node::info, parser_node::node_type, pt_query_info::oids_included, db_session::parser, PT_SELECT, PT_UNION, pt_statement_info::query, db_session::stage, StatementPreparedStage, and db_session::statements.
Referenced by prepare_column_list_info_set().
void db_rewind_statement | ( | DB_SESSION * | session | ) |
Definition at line 785 of file db_vdb.c.
References db_session::dimension, and db_session::stmt_ndx.
Referenced by ux_execute_all().
int db_session_is_last_statement | ( | DB_SESSION * | session | ) |
Definition at line 799 of file db_vdb.c.
References assert, db_session::dimension, and db_session::stmt_ndx.
Referenced by db_set_statement_auto_commit().
void db_session_set_holdable | ( | DB_SESSION * | session, |
bool | holdable | ||
) |
Definition at line 1040 of file db_vdb.c.
References parser_context::flag, parser_context::is_holdable, NULL, and db_session::parser.
Referenced by ux_execute(), and ux_execute_all().
void db_session_set_return_generated_keys | ( | DB_SESSION * | session, |
bool | return_generated_keys | ||
) |
Definition at line 1075 of file db_vdb.c.
References parser_context::flag, NULL, db_session::parser, and parser_context::return_generated_keys.
Referenced by ux_execute(), and ux_execute_all().
void db_session_set_xasl_cache_pinned | ( | DB_SESSION * | session, |
bool | is_pinned, | ||
bool | recompile | ||
) |
Definition at line 1057 of file db_vdb.c.
References parser_context::flag, parser_context::is_xasl_pinned_reference, NULL, db_session::parser, and parser_context::recompile_xasl_pinned.
Referenced by ux_execute(), ux_execute_all(), ux_execute_array(), and ux_prepare().
|
static |
Definition at line 489 of file db_vdb.c.
References base_client_timeb, base_server_timeb, db_datetime::date, db_calculate_current_time(), db_get_datetime(), db_tm_encode(), and db_datetime::time.
Referenced by db_execute_and_keep_statement_local().
int db_set_client_cache_time | ( | DB_SESSION * | session, |
int | stmt_ndx, | ||
CACHE_TIME * | cache_time | ||
) |
Definition at line 813 of file db_vdb.c.
References ARG_FILE_LINE, parser_node::cache_time, parser_node::clt_cache_check, db_session::dimension, er_errid(), ER_OBJ_INVALID_ARGUMENTS, er_set(), ER_WARNING_SEVERITY, parser_node::flag, NO_ERROR, db_session::parser, and db_session::statements.
Referenced by ux_execute(), and ux_execute_all().
void db_set_read_fetch_instance_version | ( | LC_FETCH_VERSION_TYPE | read_Fetch_Instance_Version | ) |
Definition at line 3904 of file db_vdb.c.
References tm_Tran_read_fetch_instance_version.
Referenced by au_is_dba_group_member(), csql_help_trigger(), db_compile_and_execute_queries_internal(), db_execute_and_keep_statement(), db_execute_statement(), do_execute_statement(), do_statement(), and sm_active_triggers().
int db_set_statement_auto_commit | ( | DB_SESSION * | session, |
bool | auto_commit | ||
) |
Definition at line 4030 of file db_vdb.c.
References ARG_FILE_LINE, assert, db_can_execute_statement_with_autocommit(), db_session_is_last_statement(), db_session::dimension, er_errid(), ER_IT_EMPTY_STATEMENT, ER_IT_INVALID_SESSION, ER_OBJ_INVALID_ARGUMENTS, er_set(), ER_WARNING_SEVERITY, parser_node::flag, parser_context::flag, i, parser_context::is_auto_commit, parser_context::is_holdable, NO_ERROR, parser_node::node_type, NULL, db_session::parser, PT_IS_QUERY_NODE_TYPE, db_session::stage, StatementPreparedStage, db_session::statements, db_session::stmt_ndx, tr_has_user_trigger(), and parser_node::use_auto_commit.
Referenced by csql_execute_statements(), ux_execute(), ux_execute_all(), ux_execute_array(), and ux_execute_batch().
int db_set_system_generated_statement | ( | DB_SESSION * | session | ) |
Definition at line 3173 of file db_vdb.c.
References ARG_FILE_LINE, CHECK_CONNECT_MINUSONE, ER_OBJ_INVALID_ARGUMENTS, er_set(), ER_WARNING_SEVERITY, parser_context::flag, parser_context::is_system_generated_stmt, NO_ERROR, NULL, and db_session::parser.
Referenced by au_delete_auth_of_dropping_table().
int db_statement_count | ( | DB_SESSION * | session | ) |
Definition at line 132 of file db_vdb.c.
References get_dimension_of(), NULL, and db_session::statements.
Referenced by csql_execute_statements(), do_check_rows_for_null(), do_run_update_query_for_class(), set_host_variables(), sm_truncate_using_delete(), and ux_execute_all().
int db_validate | ( | DB_OBJECT * | vc | ) |
Definition at line 3573 of file db_vdb.c.
References ARG_FILE_LINE, BUF_SIZE, CHECK_CONNECT_ERROR, db_attribute_next(), db_compile_and_execute_local(), db_get_attributes(), db_get_class_name(), db_get_query_specs(), db_is_any_class(), db_query_end(), db_query_spec_next(), db_query_spec_string(), db_validate_query_spec(), er_errid(), ER_ERROR_SEVERITY, ER_OBJ_INVALID_ARGUMENTS, ER_OBJ_NOT_A_CLASS, ER_OUT_OF_VIRTUAL_MEMORY, er_set(), ER_WARNING_SEVERITY, free_and_init, get_reasonable_predicate(), NO_ERROR, NULL, and strlen.
Definition at line 3441 of file db_vdb.c.
References ARG_FILE_LINE, db_get_class_name(), db_is_vclass(), er_errid(), ER_ERROR_SEVERITY, ER_GENERIC_ERROR, ER_OBJ_INVALID_ARGUMENTS, er_set(), ER_SM_NOT_A_VIRTUAL_CLASS, NO_ERROR, NULL, parser_create_parser(), parser_free_parser(), parser_parse_string_use_sys_charset(), pt_has_error, pt_report_to_ersys(), PT_SYNTAX, pt_validate_query_spec(), and rc.
Referenced by db_validate().
|
static |
Definition at line 2545 of file db_vdb.c.
References DB_TYPE_ENUMERATION, DB_TYPE_UNKNOWN, DB_TYPE_VARCHAR, DB_TYPE_VARNCHAR, db_value_domain_init(), db_value_precision(), db_value_type(), DOMAIN_COMPATIBLE, ER_PT_EXECUTE, parser_context::flag, parser_context::host_var_count, parser_context::host_var_expected_domains, parser_context::host_variables, i, pr_type::id, MSGCAT_SEMANTIC_CANT_COERCE_TO, MSGCAT_SET_PARSER_SEMANTIC, NO_ERROR, NULL, db_session::parser, pt_db_to_type_enum(), PT_ERRORmf2, PT_EXECUTION, pt_report_to_ersys(), pt_reset_error(), pt_type_enum_to_db_domain(), parser_context::set_host_var, tp_domain_free(), TP_DOMAIN_TYPE, TP_IS_CHAR_TYPE, tp_value_cast_preserve_domain(), and tp_domain::type.
Referenced by db_compile_statement_local(), and do_recompile_and_execute_prepared_statement().
|
static |
Definition at line 2410 of file db_vdb.c.
References assert, db_prepare_info::auto_param_count, parser_context::auto_param_count, char_array_to_name_list(), cleanup(), pt_execute_info::column_count, db_prepare_info::columns, csession_get_prepared_statement(), CUBRID_STMT_EXECUTE_PREPARE, db_check_limit_need_recompile(), db_init_prepare_info(), db_unpack_prepare_info(), do_set_user_host_variables(), err, pt_statement_info::execute, parser_context::flag, free_and_init, parser_context::host_var_count, db_prepare_info::host_var_expected_domains, parser_context::host_var_expected_domains, db_prepare_info::host_variables, parser_context::host_variables, i, parser_node::info, db_prepare_info::into_count, db_prepare_info::into_list, pt_execute_info::into_list, MRO_CANDIDATE, MRO_IS_USED, pt_execute_info::name, pt_statement_info::name, db_query_type::next, NO_ERROR, NULL, db_prepare_info::oids_included, pt_execute_info::oids_included, pt_name_info::original, db_session::parser, pr_clear_value(), PT_INTERNAL_ERROR, pt_make_string_value(), pt_node_to_cmd_type(), pt_execute_info::query, db_prepare_info::recompile, pt_execute_info::recompile, parser_context::set_host_var, db_value_array::size, SORT_LIMIT_CANDIDATE, SORT_LIMIT_USED, db_prepare_info::statement, db_session::statements, db_prepare_info::stmt_type, pt_execute_info::stmt_type, db_session::type_list, pt_execute_info::using_list, db_value_array::vals, xasl_node_header::xasl_flag, pt_execute_info::xasl_id, XASL_ID_COPY, XASL_ID_IS_NULL, and XASL_ID_SET_NULL.
Referenced by db_compile_statement_local().
|
static |
Definition at line 2798 of file db_vdb.c.
References csession_delete_prepared_statement(), parser_node::info, pt_prepare_info::name, pt_statement_info::name, pt_name_info::original, and pt_statement_info::prepare.
Referenced by db_execute_and_keep_statement_local().
|
static |
Definition at line 2274 of file db_vdb.c.
References parser_node::alias_print, ARG_FILE_LINE, assert, db_prepare_info::auto_param_count, parser_context::auto_param_count, parser_varchar::bytes, cleanup(), db_prepare_info::columns, csession_create_prepared_statement(), csession_delete_prepared_statement(), CUBRID_STMT_SELECT, pt_value_info::data_value, db_check_single_query(), db_close_session_local(), db_compile_statement_local(), db_init_prepare_info(), db_open_buffer_local(), db_pack_prepare_info(), db_session::dimension, ER_CANNOT_PREPARE_WITH_HOST_VAR, er_errid(), ER_ERROR_SEVERITY, ER_FAILED, ER_IT_IS_DISALLOWED_AS_PREPARED, ER_IT_MULTIPLE_STATEMENT, er_set(), er_stack_pop(), er_stack_push(), err, parser_node::flag, free_and_init, parser_context::host_var_count, db_prepare_info::host_var_expected_domains, parser_context::host_var_expected_domains, db_prepare_info::host_variables, parser_context::host_variables, i, db_session::include_oid, parser_node::info, db_prepare_info::into_count, db_prepare_info::into_list, is_allowed_as_prepared_statement(), is_allowed_as_prepared_statement_with_hv(), pt_prepare_info::name, pt_statement_info::name, NO_ERROR, parser_node::node_type, NULL, db_prepare_info::oids_included, pt_query_info::oids_included, pt_name_info::original, db_session::parser, pt_statement_info::prepare, pt_node_to_cmd_type(), PT_PREPARE_STATEMENT, pt_show_node_type(), pt_statement_info::query, db_prepare_info::recompile, parser_node::recompile, set_prepare_info_into_list(), db_value_array::size, db_prepare_info::statement, pt_prepare_info::statement, db_session::statements, db_prepare_info::stmt_type, pt_data_value::str, db_session::type_list, db_value_array::vals, and pt_statement_info::value.
Referenced by db_execute_and_keep_statement_local().
|
static |
Definition at line 2728 of file db_vdb.c.
References assert, parser_varchar::bytes, pt_value_info::data_value, db_compile_statement(), db_execute_and_keep_statement_local(), db_open_buffer_local(), do_cast_host_variables_to_expected_domain(), do_set_user_host_variables(), er_errid(), err, pt_statement_info::execute, parser_node::flag, parser_context::flag, parser_node::info, parser_context::is_auto_commit, parser_context::is_holdable, db_session::is_subsession_for_prepared, db_session::next, NO_ERROR, parser_node::node_type, NULL, db_session::parser, PT_TYPE_CHAR, PT_VALUE, pt_execute_info::query, pt_execute_info::recompile, parser_node::recompile, parser_context::set_host_var, db_session::statements, pt_data_value::str, parser_node::type_enum, pt_execute_info::using_list, and pt_statement_info::value.
Referenced by db_execute_and_keep_statement_local().
|
static |
Definition at line 2602 of file db_vdb.c.
References ARG_FILE_LINE, assert, db_push_values(), db_value_clear_array(), er_errid(), ER_ERROR_SEVERITY, ER_IT_INCORRECT_HOSTVAR_COUNT, er_set(), err, free_and_init, parser_context::host_var_count, NO_ERROR, NULL, db_session::parser, db_value_array::size, db_value_array::vals, and values_list_to_values_array().
Referenced by do_get_prepared_statement_info(), and do_recompile_and_execute_prepared_statement().
|
static |
Definition at line 108 of file db_vdb.c.
Referenced by db_parse_one_statement(), db_statement_count(), and initialize_session().
|
static |
Definition at line 3497 of file db_vdb.c.
References db_attribute_is_shared(), db_attribute_name(), db_attribute_type(), 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_MULTISET, DB_TYPE_OBJECT, DB_TYPE_SEQUENCE, DB_TYPE_SET, DB_TYPE_SHORT, DB_TYPE_STRING, DB_TYPE_TIME, DB_TYPE_TIMESTAMP, DB_TYPE_TIMESTAMPLTZ, DB_TYPE_TIMESTAMPTZ, and NULL.
Referenced by db_validate().
|
static |
Definition at line 190 of file db_vdb.c.
References assert, db_session::dimension, get_dimension_of(), NULL, and db_session::statements.
Referenced by db_open_buffer_local(), db_open_file(), and db_open_file_name().
Definition at line 2811 of file db_vdb.c.
References assert, parser_node::node_type, PT_DEALLOCATE_PREPARE, PT_EXECUTE_PREPARE, and PT_PREPARE_STATEMENT.
Referenced by do_process_prepare_statement().
Definition at line 2835 of file db_vdb.c.
References assert, pt_statement_info::create_entity, pt_create_entity_info::entity_type, parser_node::info, parser_node::node_type, PT_CLASS, PT_CREATE_ENTITY, PT_DELETE, PT_DIFFERENCE, PT_DO, PT_EVALUATE, PT_INSERT, PT_INTERSECTION, PT_MERGE, PT_METHOD_CALL, PT_SELECT, PT_SET_SESSION_VARIABLES, PT_UNION, and PT_UPDATE.
Referenced by do_process_prepare_statement().
|
static |
Definition at line 3400 of file db_vdb.c.
References sm_get_class_type(), and SM_VCLASS_CT.
Referenced by db_get_all_vclasses().
|
static |
Definition at line 3917 of file db_vdb.c.
References DB_CLASS_NOT_MODIFIED, NULL, and parser_walk_tree().
Referenced by db_execute_and_keep_statement_local(), and db_has_modified_class().
|
static |
Definition at line 3936 of file db_vdb.c.
References au_fetch_class_force(), AU_FETCH_READ, DB_CLASS_ERROR, DB_CLASS_MODIFIED, DB_CLASS_NOT_MODIFIED, pt_name_info::db_object, pt_name_info::db_object_chn, db_object::decached, ER_HEAP_UNKNOWN_OBJECT, error(), pt_spec_info::flat_entity_list, parser_node::info, locator_get_cache_coherency_number(), pt_statement_info::name, parser_node::next, NO_ERROR, parser_node::node_type, NULL, NULL_CHN, PT_CONTINUE_WALK, PT_SPEC, PT_STOP_WALK, SM_CLASS_CT, sm_get_class_type(), and pt_statement_info::spec.
|
static |
Definition at line 2168 of file db_vdb.c.
References ARG_FILE_LINE, assert, CUBRID_STMT_SELECT, ER_ERROR_SEVERITY, ER_FAILED, ER_OUT_OF_VIRTUAL_MEMORY, er_set(), error(), free_and_init, i, parser_node::info, db_prepare_info::into_count, db_prepare_info::into_list, pt_query_info::into_list, pt_statement_info::name, parser_node::next, NO_ERROR, NULL, pt_name_info::original, PT_IS_NAME_NODE, pt_length_of_list(), pt_node_to_cmd_type(), pt_statement_info::query, and strlen.
Referenced by do_process_prepare_statement().
|
static |
Definition at line 2047 of file db_vdb.c.
References CUBRID_STMT_DELETE, CUBRID_STMT_INSERT, CUBRID_STMT_UPDATE, db_update_row_count_cache(), parser_context::execution_values, and execution_state_values::row_count.
Referenced by db_execute_and_keep_statement_local().
|
static |
Definition at line 2073 of file db_vdb.c.
References pt_expr_info::arg1, ARG_FILE_LINE, assert, db_get_variable(), db_make_null(), db_value_clear_array(), er_errid(), ER_ERROR_SEVERITY, ER_OBJ_INVALID_ARGUMENTS, ER_OUT_OF_VIRTUAL_MEMORY, er_set(), ER_WARNING_SEVERITY, err, pt_statement_info::expr, free_and_init, i, parser_node::info, parser_node::next, NO_ERROR, parser_node::node_type, NULL, pt_expr_info::op, pr_clear_value(), pr_clone_value(), PT_EVALUATE_VARIABLE, PT_EXPR, PT_VALUE, pt_value_to_db(), db_value_array::size, and db_value_array::vals.
Referenced by do_set_user_host_variables().
|
static |
Definition at line 72 of file db_vdb.c.
Referenced by db_calculate_current_server_time(), and db_set_base_server_time().
|
static |
Definition at line 71 of file db_vdb.c.
Referenced by db_calculate_current_server_time(), db_execute_and_keep_statement_local(), and db_set_base_server_time().