CUBRID Engine
latest
|
#include "config.h"
#include <assert.h>
#include "transaction_sr.h"
#include "locator_sr.h"
#include "log_2pc.h"
#include "log_lsa.hpp"
#include "log_manager.h"
#include "xserver_interface.h"
#include "server_support.h"
#include "dbtype.h"
#include "thread_manager.hpp"
Go to the source code of this file.
int xtran_get_local_transaction_id | ( | THREAD_ENTRY * | thread_p, |
DB_VALUE * | trid | ||
) |
Definition at line 665 of file transaction_sr.c.
References assert, db_make_int(), DB_TYPE_INTEGER, db_value_domain_init(), logtb_find_current_tranid(), NO_ERROR, and NULL.
Referenced by db_local_transaction_id(), sqp_get_server_info(), and stran_get_local_transaction_id().
bool xtran_is_blocked | ( | THREAD_ENTRY * | thread_p, |
int | tran_index | ||
) |
Definition at line 559 of file transaction_sr.c.
References lock_is_waiting_transaction().
Referenced by stran_is_blocked(), and tran_is_blocked().
int xtran_lock_rep_read | ( | THREAD_ENTRY * | thread_p, |
LOCK | lock_rr_tran | ||
) |
Definition at line 691 of file transaction_sr.c.
References ARG_FILE_LINE, BOOT_BROKER_AND_DEFAULT_CLIENT_TYPE, BOOT_CSQL_CLIENT_TYPE, boot_Host_name, BOOT_IS_ALLOWED_CLIENT_TYPE_IN_MT_MODE, BOOT_NORMAL_CLIENT_TYPE, css_ha_server_state(), css_is_ha_repl_delayed(), DB_CLIENT_TYPE_BROKER, DB_CLIENT_TYPE_SLAVE_ONLY_BROKER, er_log_debug, HA_SERVER_STATE_ACTIVE, HA_SERVER_STATE_MAINTENANCE, HA_SERVER_STATE_STANDBY, HA_SERVER_STATE_TO_BE_STANDBY, LK_UNCOND_LOCK, lock_rep_read_tran(), logtb_find_current_client_hostname(), logtb_find_current_client_type(), and xtran_should_connection_reset().
Referenced by slocator_find_lockhint_class_oids(), and stran_lock_rep_read().
int xtran_server_2pc_attach_global_tran | ( | THREAD_ENTRY * | thread_p, |
int | gtrid | ||
) |
Definition at line 512 of file transaction_sr.c.
References log_2pc_attach_global_tran().
Referenced by stran_server_2pc_attach_global_tran(), and tran_server_2pc_attach_global_tran().
TRAN_STATE xtran_server_2pc_prepare | ( | THREAD_ENTRY * | thread_p | ) |
Definition at line 466 of file transaction_sr.c.
References locator_drop_transient_class_name_entries(), log_2pc_prepare(), and NULL.
Referenced by stran_server_2pc_prepare(), and tran_server_2pc_prepare().
TRAN_STATE xtran_server_2pc_prepare_global_tran | ( | THREAD_ENTRY * | thread_p, |
int | global_tranid | ||
) |
Definition at line 540 of file transaction_sr.c.
References locator_drop_transient_class_name_entries(), log_2pc_prepare_global_tran(), and NULL.
Referenced by stran_server_2pc_prepare_global_tran(), and tran_server_2pc_prepare_global_tran().
int xtran_server_2pc_recovery_prepared | ( | THREAD_ENTRY * | thread_p, |
int | gtrids[], | ||
int | size | ||
) |
Definition at line 490 of file transaction_sr.c.
References log_2pc_recovery_prepared().
Referenced by stran_server_2pc_recovery_prepared(), and tran_server_2pc_recovery_prepared().
int xtran_server_2pc_start | ( | THREAD_ENTRY * | thread_p | ) |
Definition at line 446 of file transaction_sr.c.
References log_2pc_start().
Referenced by stran_server_2pc_start(), and tran_server_2pc_start().
TRAN_STATE xtran_server_abort | ( | THREAD_ENTRY * | thread_p | ) |
Definition at line 113 of file transaction_sr.c.
References ARG_FILE_LINE, ER_ERROR_SEVERITY, ER_LK_UNILATERALLY_ABORTED, er_set(), log_abort(), LOG_FIND_THREAD_TRAN_INDEX, LOG_SET_CURRENT_TRAN_INDEX, logtb_find_client_name_host_pid(), NULL, thread_get_thread_entry_info(), and tran_server_unilaterally_abort_tran().
Referenced by cubload::load_task::execute(), stran_server_abort_internal(), tran_server_abort(), xboot_copy(), and xboot_unregister_client().
TRAN_STATE xtran_server_commit | ( | THREAD_ENTRY * | thread_p, |
bool | retain_lock | ||
) |
Definition at line 69 of file transaction_sr.c.
References log_commit(), LOG_FIND_THREAD_TRAN_INDEX, TRAN_UNACTIVE_COMMITTED, and TRAN_UNACTIVE_COMMITTED_INFORMING_PARTICIPANTS.
Referenced by boot_reset_mk_after_restart_from_backup(), boot_restart_server(), cubload::load_task::execute(), stran_server_commit_internal(), tran_server_commit(), xboot_copy(), and xboot_emergency_patch().
TRAN_STATE xtran_server_end_topop | ( | THREAD_ENTRY * | thread_p, |
LOG_RESULT_TOPOP | result, | ||
LOG_LSA * | topop_lsa | ||
) |
Definition at line 245 of file transaction_sr.c.
References ARG_FILE_LINE, assert, ER_FATAL_ERROR_SEVERITY, ER_LOG_UNKNOWN_TRANINDEX, er_set(), er_stack_pop(), er_stack_push(), locator_drop_transient_class_name_entries(), LOG_FIND_CURRENT_TDES(), LOG_FIND_THREAD_TRAN_INDEX, log_get_parent_lsa_system_op(), LOG_RESULT_TOPOP_ABORT, LOG_RESULT_TOPOP_ATTACH_TO_OUTER, LOG_RESULT_TOPOP_COMMIT, log_sysop_abort(), log_sysop_attach_to_outer(), log_sysop_commit(), NULL, log_tdes::state, TRAN_UNACTIVE_ABORTED, TRAN_UNACTIVE_COMMITTED, TRAN_UNACTIVE_UNKNOWN, and tx_lob_locator_clear().
Referenced by qexec_execute_delete(), qexec_execute_insert(), qexec_execute_merge(), qexec_execute_update(), stran_server_end_topop(), tran_server_2pc_prepare_global_tran(), xlocator_force(), and xlocator_repl_force().
int xtran_server_get_global_tran_info | ( | THREAD_ENTRY * | thread_p, |
int | gtrid, | ||
void * | buffer, | ||
int | size | ||
) |
Definition at line 426 of file transaction_sr.c.
References log_2pc_get_global_tran_info().
Referenced by stran_server_get_global_tran_info(), and tran_server_get_global_tran_info().
bool xtran_server_has_updated | ( | THREAD_ENTRY * | thread_p | ) |
Definition at line 575 of file transaction_sr.c.
References lock_has_xlock(), and logtb_has_updated().
Referenced by stran_server_has_updated(), tran_server_has_updated(), and xtran_server_is_active_and_has_updated().
int xtran_server_is_active_and_has_updated | ( | THREAD_ENTRY * | thread_p | ) |
Definition at line 650 of file transaction_sr.c.
References logtb_is_current_active(), and xtran_server_has_updated().
Referenced by stran_server_is_active_and_has_updated(), and tran_server_is_active_and_has_updated().
TRAN_STATE xtran_server_partial_abort | ( | THREAD_ENTRY * | thread_p, |
const char * | savept_name, | ||
LOG_LSA * | savept_lsa | ||
) |
Definition at line 379 of file transaction_sr.c.
References log_abort_partial().
Referenced by stran_server_partial_abort(), and tran_server_partial_abort().
int xtran_server_savepoint | ( | THREAD_ENTRY * | thread_p, |
const char * | savept_name, | ||
LOG_LSA * | savept_lsa | ||
) |
Definition at line 330 of file transaction_sr.c.
References ER_FAILED, locator_savepoint_transient_class_name_entries(), log_append_savepoint(), LSA_COPY(), LSA_SET_NULL(), NO_ERROR, and NULL.
Referenced by stran_server_savepoint(), and tran_server_savepoint().
int xtran_server_set_global_tran_info | ( | THREAD_ENTRY * | thread_p, |
int | gtrid, | ||
void * | info, | ||
int | size | ||
) |
Definition at line 404 of file transaction_sr.c.
References log_2pc_set_global_tran_info().
Referenced by stran_server_set_global_tran_info(), and tran_server_set_global_tran_info().
int xtran_server_start_topop | ( | THREAD_ENTRY * | thread_p, |
LOG_LSA * | topop_lsa | ||
) |
Definition at line 203 of file transaction_sr.c.
References ASSERT_ERROR, assert_release, ER_FAILED, locator_savepoint_transient_class_name_entries(), log_get_parent_lsa_system_op(), log_sysop_start(), LSA_SET_NULL(), NO_ERROR, and NULL.
Referenced by qexec_execute_delete(), qexec_execute_insert(), qexec_execute_merge(), qexec_execute_update(), stran_server_start_topop(), tran_server_2pc_prepare_global_tran(), xlocator_force(), and xlocator_repl_force().
int xtran_wait_server_active_trans | ( | THREAD_ENTRY * | thread_p | ) |
Definition at line 588 of file transaction_sr.c.
References css_conn_entry::client_id, css_count_transaction_worker_threads(), logtb_is_interrupted_tran(), logtb_set_tran_index_interrupt(), NULL, p, thread_get_thread_entry_info(), and thread_sleep().
Referenced by stran_wait_server_active_trans().