CUBRID Engine  latest
network_sr.c File Reference
#include "config.h"
#include <stdio.h>
#include <string.h>
#include <assert.h>
#include "xserver_interface.h"
#include "boot_sr.h"
#include "connection_error.h"
#include "connection_sr.h"
#include "critical_section.h"
#include "event_log.h"
#include "internal_tasks_worker_pool.hpp"
#include "log_impl.h"
#include "memory_alloc.h"
#include "message_catalog.h"
#include "network.h"
#include "network_interface_sr.h"
#include "perf_monitor.h"
#include "query_list.h"
#include "release_string.h"
#include "server_support.h"
#include "system_parameter.h"
#include "tz_support.h"
#include "util_func.h"
#include "tcp.h"
#include "thread_entry.hpp"
#include "thread_manager.hpp"

Go to the source code of this file.

Classes

struct  net_request
 

Typedefs

typedef void(* net_server_func) (THREAD_ENTRY *thrd, unsigned int rid, char *request, int reqlen)
 

Enumerations

enum  net_req_act {
  CHECK_DB_MODIFICATION = 0x0001, CHECK_AUTHORIZATION = 0x0002, SET_DIAGNOSTICS_INFO = 0x0004, IN_TRANSACTION = 0x0008,
  OUT_TRANSACTION = 0x0010
}
 

Functions

static void net_server_init (void)
 
static int net_server_request (THREAD_ENTRY *thread_p, unsigned int rid, int request, int size, char *buffer)
 
static int net_server_conn_down (THREAD_ENTRY *thread_p, CSS_THREAD_ARG arg)
 
int net_server_start (const char *server_name)
 
void net_cleanup_server_queues (unsigned int rid)
 
const char * net_server_request_name (int request)
 

Variables

static struct net_request net_Requests [NET_SERVER_REQUEST_END]
 
static int net_Histo_call_count = 0
 

Typedef Documentation

typedef void(* net_server_func) (THREAD_ENTRY *thrd, unsigned int rid, char *request, int reqlen)

Definition at line 70 of file network_sr.c.

Enumeration Type Documentation

Enumerator
CHECK_DB_MODIFICATION 
CHECK_AUTHORIZATION 
SET_DIAGNOSTICS_INFO 
IN_TRANSACTION 
OUT_TRANSACTION 

Definition at line 62 of file network_sr.c.

Function Documentation

void net_cleanup_server_queues ( unsigned int  rid)

Definition at line 1430 of file network_sr.c.

References css_cleanup_server_queues().

Referenced by stran_server_abort_internal(), and stran_server_commit_internal().

Here is the caller graph for this function:

static int net_server_conn_down ( THREAD_ENTRY thread_p,
CSS_THREAD_ARG  arg 
)
static
static void net_server_init ( void  )
static

Definition at line 100 of file network_sr.c.

References net_request::action_attribute, CHECK_AUTHORIZATION, CHECK_DB_MODIFICATION, net_request::elapsed_time, i, IN_TRANSACTION, net_request::name, net_Histo_call_count, net_Requests, NET_SERVER_ACL_DUMP, NET_SERVER_ACL_RELOAD, NET_SERVER_AU_DOES_ACTIVE_USER_EXIST, NET_SERVER_AU_LOGIN_USER, NET_SERVER_BO_ADD_VOLEXT, NET_SERVER_BO_BACKUP, NET_SERVER_BO_CHANGE_HA_MODE, NET_SERVER_BO_CHECK_DBCONSISTENCY, NET_SERVER_BO_COMPACT_DB, NET_SERVER_BO_COMPACT_DB_START, NET_SERVER_BO_COMPACT_DB_STOP, NET_SERVER_BO_FIND_LAST_PERM, NET_SERVER_BO_FIND_LAST_TEMP, NET_SERVER_BO_FIND_NPERM_VOLS, NET_SERVER_BO_FIND_NTEMP_VOLS, NET_SERVER_BO_GET_LOCALES_INFO, NET_SERVER_BO_HEAP_COMPACT, NET_SERVER_BO_INIT_SERVER, NET_SERVER_BO_NOTIFY_HA_LOG_APPLIER_STATE, NET_SERVER_BO_REGISTER_CLIENT, NET_SERVER_BO_UNREGISTER_CLIENT, NET_SERVER_BTREE_ADDINDEX, NET_SERVER_BTREE_CLASS_UNIQUE_TEST, NET_SERVER_BTREE_DELINDEX, NET_SERVER_BTREE_FIND_MULTI_UNIQUES, NET_SERVER_BTREE_FIND_UNIQUE, NET_SERVER_BTREE_GET_KEY_TYPE, NET_SERVER_BTREE_GET_STATISTICS, NET_SERVER_BTREE_LOADINDEX, NET_SERVER_CHKSUM_REPL, NET_SERVER_CSS_DUMP_CS_STAT, NET_SERVER_CSS_KILL_OR_INTERRUPT_TRANSACTION, NET_SERVER_CSS_KILL_TRANSACTION, NET_SERVER_CT_CHECK_REP_DIR, NET_SERVER_DISK_FREEPGS, NET_SERVER_DISK_REMARKS, NET_SERVER_DISK_TOTALPGS, NET_SERVER_DISK_VLABEL, NET_SERVER_ES_COPY_FILE, NET_SERVER_ES_CREATE_FILE, NET_SERVER_ES_DELETE_FILE, NET_SERVER_ES_GET_FILE_SIZE, NET_SERVER_ES_READ_FILE, NET_SERVER_ES_RENAME_FILE, NET_SERVER_ES_WRITE_FILE, NET_SERVER_FILE_APPLY_TDE_TO_CLASS_FILES, NET_SERVER_GET_MVCC_SNAPSHOT, NET_SERVER_HEAP_CREATE, NET_SERVER_HEAP_DESTROY, NET_SERVER_HEAP_DESTROY_WHEN_NEW, NET_SERVER_HEAP_GET_CLASS_NOBJS_AND_NPAGES, NET_SERVER_HEAP_HAS_INSTANCE, NET_SERVER_HEAP_RECLAIM_ADDRESSES, NET_SERVER_JSP_GET_SERVER_PORT, NET_SERVER_LC_ASSIGN_OID, NET_SERVER_LC_ASSIGN_OID_BATCH, NET_SERVER_LC_CHECK_FK_VALIDITY, NET_SERVER_LC_DELETE_CLASSNAME, NET_SERVER_LC_DEMOTE_CLASS_LOCK, NET_SERVER_LC_DOESEXIST, NET_SERVER_LC_FETCH, NET_SERVER_LC_FETCH_ALLREFS_LOCKSET, NET_SERVER_LC_FETCH_LOCKHINT_CLASSES, NET_SERVER_LC_FETCH_LOCKSET, NET_SERVER_LC_FETCHALL, NET_SERVER_LC_FIND_CLASSOID, NET_SERVER_LC_FIND_LOCKHINT_CLASSOIDS, NET_SERVER_LC_FORCE, NET_SERVER_LC_GET_CLASS, NET_SERVER_LC_NOTIFY_ISOLATION_INCONS, NET_SERVER_LC_REDISTRIBUTE_PARTITION_DATA, NET_SERVER_LC_REM_CLASS_FROM_INDEX, NET_SERVER_LC_RENAME_CLASSNAME, NET_SERVER_LC_REPL_FORCE, NET_SERVER_LC_RESERVE_CLASSNAME, NET_SERVER_LC_RESERVE_CLASSNAME_GET_OID, NET_SERVER_LC_UPGRADE_INSTANCES_DOMAIN, NET_SERVER_LD_DESTROY, NET_SERVER_LD_FETCH_STATUS, NET_SERVER_LD_INIT, NET_SERVER_LD_INSTALL_CLASS, NET_SERVER_LD_INTERRUPT, NET_SERVER_LD_LOAD_BATCH, NET_SERVER_LD_UPDATE_STATS, NET_SERVER_LK_DUMP, NET_SERVER_LOCK_RR, NET_SERVER_LOG_ADD_LOB_LOCATOR, NET_SERVER_LOG_CHANGE_STATE_OF_LOCATOR, NET_SERVER_LOG_CHECKPOINT, NET_SERVER_LOG_DROP_LOB_LOCATOR, NET_SERVER_LOG_DUMP_STAT, NET_SERVER_LOG_DUMP_TRANTB, NET_SERVER_LOG_FIND_LOB_LOCATOR, NET_SERVER_LOG_GETPACK_TRANTB, NET_SERVER_LOG_RESET_ISOLATION, NET_SERVER_LOG_RESET_WAIT_MSECS, NET_SERVER_LOG_SET_INTERRUPT, NET_SERVER_LOG_SET_SUPPRESS_REPL_ON_TRANSACTION, NET_SERVER_LOGWR_GET_LOG_PAGES, NET_SERVER_LS_GET_LIST_FILE_PAGE, NET_SERVER_MNT_SERVER_COPY_GLOBAL_STATS, NET_SERVER_MNT_SERVER_COPY_STATS, NET_SERVER_MNT_SERVER_START_STATS, NET_SERVER_MNT_SERVER_STOP_STATS, NET_SERVER_PING, NET_SERVER_PRM_DUMP_PARAMETERS, NET_SERVER_PRM_GET_FORCE_PARAMETERS, NET_SERVER_PRM_GET_PARAMETERS, NET_SERVER_PRM_SET_PARAMETERS, NET_SERVER_QM_QUERY_DROP_ALL_PLANS, NET_SERVER_QM_QUERY_DUMP_CACHE, NET_SERVER_QM_QUERY_DUMP_PLANS, NET_SERVER_QM_QUERY_END, NET_SERVER_QM_QUERY_EXECUTE, NET_SERVER_QM_QUERY_PREPARE, NET_SERVER_QM_QUERY_PREPARE_AND_EXECUTE, NET_SERVER_QPROC_GET_CURRENT_VALUE, NET_SERVER_QPROC_GET_NEXT_VALUE, NET_SERVER_QPROC_GET_SERVER_INFO, NET_SERVER_QPROC_GET_SYS_TIMESTAMP, NET_SERVER_QST_GET_STATISTICS, NET_SERVER_QST_UPDATE_ALL_STATISTICS, NET_SERVER_QST_UPDATE_STATISTICS, NET_SERVER_REPL_INFO, NET_SERVER_REPL_LOG_GET_APPEND_LSA, NET_SERVER_SERIAL_DECACHE, NET_SERVER_SES_CHECK_SESSION, NET_SERVER_SES_CREATE_PREPARED_STATEMENT, NET_SERVER_SES_DELETE_PREPARED_STATEMENT, NET_SERVER_SES_DROP_SESSION_VARIABLES, NET_SERVER_SES_END_SESSION, NET_SERVER_SES_GET_LAST_INSERT_ID, NET_SERVER_SES_GET_PREPARED_STATEMENT, NET_SERVER_SES_GET_ROW_COUNT, NET_SERVER_SES_GET_SESSION_VARIABLE, NET_SERVER_SES_RESET_CUR_INSERT_ID, NET_SERVER_SES_SET_ROW_COUNT, NET_SERVER_SES_SET_SESSION_VARIABLES, NET_SERVER_SHUTDOWN, NET_SERVER_SPACEDB, NET_SERVER_TDE_CHANGE_MK_ON_SERVER, NET_SERVER_TDE_GET_DATA_KEYS, NET_SERVER_TDE_GET_MK_FILE_PATH, NET_SERVER_TDE_GET_MK_INFO, NET_SERVER_TM_ISBLOCKED, NET_SERVER_TM_LOCAL_TRANSACTION_ID, NET_SERVER_TM_SERVER_2PC_ATTACH_GT, NET_SERVER_TM_SERVER_2PC_PREPARE, NET_SERVER_TM_SERVER_2PC_PREPARE_GT, NET_SERVER_TM_SERVER_2PC_RECOVERY_PREPARED, NET_SERVER_TM_SERVER_2PC_START, NET_SERVER_TM_SERVER_ABORT, NET_SERVER_TM_SERVER_COMMIT, NET_SERVER_TM_SERVER_END_TOPOP, NET_SERVER_TM_SERVER_GET_GTRINFO, NET_SERVER_TM_SERVER_HAS_UPDATED, NET_SERVER_TM_SERVER_ISACTIVE_AND_HAS_UPDATED, NET_SERVER_TM_SERVER_PARTIAL_ABORT, NET_SERVER_TM_SERVER_SAVEPOINT, NET_SERVER_TM_SERVER_SET_GTRINFO, NET_SERVER_TM_SERVER_START_TOPOP, NET_SERVER_TM_WAIT_SERVER_ACTIVE_TRANS, NET_SERVER_TZ_GET_CHECKSUM, NET_SERVER_VACUUM, NET_SERVER_VACUUM_DUMP, netsr_spacedb(), NULL, OUT_TRANSACTION, net_request::processing_function, net_request::request_count, sacl_dump(), sacl_reload(), sboot_add_volume_extension(), sboot_backup(), sboot_change_ha_mode(), sboot_check_db_consistency(), sboot_compact_db(), sboot_compact_start(), sboot_compact_stop(), sboot_find_last_permanent(), sboot_find_last_temp(), sboot_find_number_permanent_volumes(), sboot_find_number_temp_volumes(), sboot_get_locales_info(), sboot_get_timezone_checksum(), sboot_heap_compact(), sboot_initialize_server(), sboot_notify_ha_log_applier_state(), sboot_notify_unregister_client(), sboot_register_client(), sbtree_add_index(), sbtree_class_test_unique(), sbtree_delete_index(), sbtree_find_multi_uniques(), sbtree_find_unique(), sbtree_get_key_type(), sbtree_get_statistics(), sbtree_load_index(), schksum_insert_repl_log_and_demote_table_lock(), sct_check_rep_dir(), sdk_freepgs(), sdk_remarks(), sdk_totalpgs(), sdk_vlabel(), server_ping(), ses_posix_copy_file(), ses_posix_create_file(), ses_posix_delete_file(), ses_posix_get_file_size(), ses_posix_read_file(), ses_posix_rename_file(), ses_posix_write_file(), SET_DIAGNOSTICS_INFO, sfile_apply_tde_to_class_files(), shf_create(), shf_destroy(), shf_destroy_when_new(), shf_get_class_num_objs_and_pages(), shf_has_instance(), shf_heap_reclaim_addresses(), sjsp_get_server_port(), sloaddb_destroy(), sloaddb_fetch_status(), sloaddb_init(), sloaddb_install_class(), sloaddb_interrupt(), sloaddb_load_batch(), sloaddb_update_stats(), slocator_assign_oid(), slocator_assign_oid_batch(), slocator_check_fk_validity(), slocator_delete_class_name(), slocator_demote_class_lock(), slocator_does_exist(), slocator_fetch(), slocator_fetch_all(), slocator_fetch_all_reference_lockset(), slocator_fetch_lockhint_classes(), slocator_fetch_lockset(), slocator_find_class_oid(), slocator_find_lockhint_class_oids(), slocator_force(), slocator_get_class(), slocator_get_reserved_class_name_oid(), slocator_notify_isolation_incons(), slocator_redistribute_partition_data(), slocator_remove_class_from_index(), slocator_rename_class_name(), slocator_repl_force(), slocator_reserve_classnames(), slocator_upgrade_instances_domain(), slock_dump(), slog_add_lob_locator(), slog_change_state_of_locator(), slog_checkpoint(), slog_drop_lob_locator(), slog_find_lob_locator(), slogin_user(), slogpb_dump_stat(), slogtb_does_active_user_exist(), slogtb_dump_trantable(), slogtb_get_mvcc_snapshot(), slogtb_get_pack_tran_table(), slogtb_reset_isolation(), slogtb_reset_wait_msecs(), slogtb_set_interrupt(), slogtb_set_suppress_repl_on_transaction(), slogwr_get_log_pages(), smnt_server_copy_global_stats(), smnt_server_copy_stats(), smnt_server_start_stats(), smnt_server_stop_stats(), sprm_server_change_parameters(), sprm_server_dump_parameters(), sprm_server_get_force_parameters(), sprm_server_obtain_parameters(), sqfile_get_list_file_page(), sqmgr_drop_all_query_plans(), sqmgr_dump_query_cache(), sqmgr_dump_query_plans(), sqmgr_end_query(), sqmgr_execute_query(), sqmgr_prepare_and_execute_query(), sqmgr_prepare_query(), sqp_get_server_info(), sqp_get_sys_timestamp(), sqst_server_get_statistics(), sqst_update_all_statistics(), sqst_update_statistics(), srepl_log_get_append_lsa(), srepl_set_info(), sserial_decache(), sserial_get_current_value(), sserial_get_next_value(), ssession_create_prepared_statement(), ssession_delete_prepared_statement(), ssession_drop_session_variables(), ssession_end_session(), ssession_find_or_create_session(), ssession_get_last_insert_id(), ssession_get_prepared_statement(), ssession_get_row_count(), ssession_get_session_variable(), ssession_reset_cur_insert_id(), ssession_set_row_count(), ssession_set_session_variables(), stde_change_mk_on_server(), stde_get_data_keys(), stde_get_mk_file_path(), stde_get_mk_info(), sthread_dump_cs_stat(), sthread_kill_or_interrupt_tran(), sthread_kill_tran_index(), stran_get_local_transaction_id(), stran_is_blocked(), stran_lock_rep_read(), stran_server_2pc_attach_global_tran(), stran_server_2pc_prepare(), stran_server_2pc_prepare_global_tran(), stran_server_2pc_recovery_prepared(), stran_server_2pc_start(), stran_server_abort(), stran_server_commit(), stran_server_end_topop(), stran_server_get_global_tran_info(), stran_server_has_updated(), stran_server_is_active_and_has_updated(), stran_server_partial_abort(), stran_server_savepoint(), stran_server_set_global_tran_info(), stran_server_start_topop(), stran_wait_server_active_trans(), svacuum(), svacuum_dump(), net_request::total_size_received, and net_request::total_size_sent.

Referenced by net_server_start().

Here is the caller graph for this function:

const char* net_server_request_name ( int  request)

Definition at line 1441 of file network_sr.c.

References net_request::name, net_Requests, NET_SERVER_PING_WITH_HANDSHAKE, NET_SERVER_REQUEST_END, and NET_SERVER_REQUEST_START.

Referenced by showstmt_array_end_scan().

Here is the caller graph for this function:

Variable Documentation

int net_Histo_call_count = 0
static

Definition at line 83 of file network_sr.c.

Referenced by net_server_init().

struct net_request net_Requests[NET_SERVER_REQUEST_END]
static

Definition at line 81 of file network_sr.c.

Referenced by net_server_init(), net_server_request(), and net_server_request_name().