CUBRID Engine
latest
|
Go to the source code of this file.
Typedefs | |
typedef struct pollfd | POLL_FD |
typedef void(* | CSS_SERVER_TIMEOUT_FN) (void) |
typedef bool(* | CSS_CHECK_SERVER_ALIVE_FN) (const char *, const char *) |
Functions | |
int | css_readn (SOCKET fd, char *ptr, int nbytes, int timeout) |
void | css_read_remaining_bytes (SOCKET fd, int len) |
int | css_net_recv (SOCKET fd, char *buffer, int *maxlen, int timeout) |
int | css_net_send (CSS_CONN_ENTRY *conn, const char *buff, int len, int timeout) |
int | css_net_send_buffer_only (CSS_CONN_ENTRY *conn, const char *buff, int len, int timeout) |
int | css_net_read_header (SOCKET fd, char *buffer, int *maxlen, int timeout) |
int | css_send_request_with_data_buffer (CSS_CONN_ENTRY *conn, int request, unsigned short *rid, const char *arg_buffer, int arg_buffer_size, char *data_buffer, int data_buffer_size) |
int | css_send_request (CSS_CONN_ENTRY *conn, int request, unsigned short *rid, const char *arg_buffer, int arg_buffer_size) |
int | css_send_data (CSS_CONN_ENTRY *conn, unsigned short rid, const char *buffer, int buffer_size) |
int | css_send_error (CSS_CONN_ENTRY *conn, unsigned short rid, const char *buffer, int buffer_size) |
const char * | css_ha_server_state_string (HA_SERVER_STATE state) |
const char * | css_ha_applier_state_string (HA_LOG_APPLIER_STATE state) |
const char * | css_ha_mode_string (HA_MODE mode) |
void | css_register_server_timeout_fn (CSS_SERVER_TIMEOUT_FN callback_fn) |
void | css_register_check_server_alive_fn (CSS_CHECK_SERVER_ALIVE_FN callback_fn) |
int | css_send_magic (CSS_CONN_ENTRY *conn) |
int | css_check_magic (CSS_CONN_ENTRY *conn) |
int | css_check_magic_with_socket (SOCKET fd) |
int | css_user_access_status_start_scan (THREAD_ENTRY *thread_p, int type, DB_VALUE **arg_values, int arg_cnt, void **ptr) |
int | css_platform_independent_poll (POLL_FD *fds, int num_of_fds, int timeout) |
int | css_vector_send (SOCKET fd, struct iovec *vec[], int *len, int bytes_written, int timeout) |
void | css_set_net_header (NET_HEADER *header_p, int type, short function_code, int request_id, int buffer_size, int transaction_id, int invalidate_snapshot, int db_error) |
void | css_set_io_vector (struct iovec *vec1_p, struct iovec *vec2_p, const char *buff, int len, int *templen) |
int | css_send_io_vector_with_socket (SOCKET &socket, struct iovec *vec_p, ssize_t total_len, int vector_length, int timeout) |
int | css_send_magic_with_socket (SOCKET &socket) |
int | css_net_send_with_socket (SOCKET &socket, const char *buff, int len, int timeout) |
int | css_net_send3_with_socket (SOCKET &socket, const char *buff1, int len1, const char *buff2, int len2, const char *buff3, int len3) |
int | css_send_request_with_socket (SOCKET &socket, int command, unsigned short *request_id, const char *arg_buffer, int arg_buffer_size) |
Variables | |
CSS_CHECK_SERVER_ALIVE_FN | css_check_server_alive_fn |
Definition at line 51 of file connection_support.h.
typedef void(* CSS_SERVER_TIMEOUT_FN) (void) |
Definition at line 49 of file connection_support.h.
typedef struct pollfd POLL_FD |
Definition at line 42 of file connection_support.h.
int css_check_magic | ( | CSS_CONN_ENTRY * | conn | ) |
Definition at line 2483 of file connection_support.c.
References css_check_magic_with_socket(), and css_conn_entry::fd.
Referenced by css_process_new_connection().
int css_check_magic_with_socket | ( | SOCKET | fd | ) |
Definition at line 2489 of file connection_support.c.
References css_Net_magic, css_readn(), ERROR_ON_READ, ERROR_WHEN_READING_SIZE, i, NO_ERRORS, ntohl(), p, prm_get_integer_value(), PRM_ID_TCP_CONNECTION_TIMEOUT, and WRONG_PACKET_TYPE.
Referenced by css_check_magic().
const char* css_ha_applier_state_string | ( | HA_LOG_APPLIER_STATE | state | ) |
Definition at line 2169 of file connection_support.c.
References HA_LOG_APPLIER_STATE_DONE, HA_LOG_APPLIER_STATE_DONE_STR, HA_LOG_APPLIER_STATE_ERROR, HA_LOG_APPLIER_STATE_ERROR_STR, HA_LOG_APPLIER_STATE_NA, HA_LOG_APPLIER_STATE_RECOVERING, HA_LOG_APPLIER_STATE_RECOVERING_STR, HA_LOG_APPLIER_STATE_UNREGISTERED, HA_LOG_APPLIER_STATE_UNREGISTERED_STR, HA_LOG_APPLIER_STATE_WORKING, and HA_LOG_APPLIER_STATE_WORKING_STR.
Referenced by css_notify_ha_log_applier_state(), and la_change_state().
Definition at line 2193 of file connection_support.c.
References HA_MODE_FAIL_BACK, HA_MODE_FAIL_OVER, HA_MODE_LAZY_BACK, HA_MODE_OFF, HA_MODE_OFF_STR, HA_MODE_ON_STR, HA_MODE_REPLICA, HA_MODE_REPLICA_STR, and HA_MODE_ROLE_CHANGE.
Referenced by boot_restart_server().
const char* css_ha_server_state_string | ( | HA_SERVER_STATE | state | ) |
Definition at line 2141 of file connection_support.c.
References HA_SERVER_STATE_ACTIVE, HA_SERVER_STATE_ACTIVE_STR, HA_SERVER_STATE_DEAD, HA_SERVER_STATE_DEAD_STR, HA_SERVER_STATE_IDLE, HA_SERVER_STATE_IDLE_STR, HA_SERVER_STATE_MAINTENANCE, HA_SERVER_STATE_MAINTENANCE_STR, HA_SERVER_STATE_NA, HA_SERVER_STATE_STANDBY, HA_SERVER_STATE_STANDBY_STR, HA_SERVER_STATE_TO_BE_ACTIVE, HA_SERVER_STATE_TO_BE_ACTIVE_STR, HA_SERVER_STATE_TO_BE_STANDBY, and HA_SERVER_STATE_TO_BE_STANDBY_STR.
Referenced by checksumdb(), chksum_report_header(), css_change_ha_server_state(), css_process_get_server_ha_mode(), css_transit_ha_server_state(), db_get_ha_server_state(), hb_resource_receive_changemode(), hb_resource_send_changemode(), la_change_state(), la_log_record_process(), la_print_log_header(), and log_active_log_header_next_scan().
int css_net_read_header | ( | SOCKET | fd, |
char * | buffer, | ||
int * | maxlen, | ||
int | timeout | ||
) |
Definition at line 1472 of file connection_support.c.
References css_net_recv().
Referenced by css_read_header(), css_receive_data(), and css_receive_error().
int css_net_recv | ( | SOCKET | fd, |
char * | buffer, | ||
int * | maxlen, | ||
int | timeout | ||
) |
Definition at line 532 of file connection_support.c.
References ARG_FILE_LINE, CHECK_SERVER_IS_ALIVE, css_check_server_alive_fn, css_peer_alive(), css_read_remaining_bytes(), css_readn(), css_set_networking_error(), css_vector_send(), ER_ERROR_SEVERITY, er_log_debug, ER_OUT_OF_VIRTUAL_MEMORY, er_set(), error(), ERROR_ON_READ, ERROR_WHEN_READING_SIZE, i, NO_ERRORS, ntohl(), NULL, pthread_mutex_lock, pthread_mutex_unlock, rc, READ_LENGTH_MISMATCH, and RECORD_TRUNCATED.
Referenced by css_net_read_header(), css_queue_data_packet(), css_queue_error_packet(), css_receive_data(), css_receive_error(), css_recv_and_queue_packet(), and css_register_new_server2().
int css_net_send | ( | CSS_CONN_ENTRY * | conn, |
const char * | buff, | ||
int | len, | ||
int | timeout | ||
) |
Definition at line 1062 of file connection_support.c.
References css_net_send_with_socket(), and css_conn_entry::fd.
Referenced by css_abort_request(), css_connect_to_master_server(), css_send_close_request(), and css_send_request_with_data_buffer().
int css_net_send3_with_socket | ( | SOCKET & | socket, |
const char * | buff1, | ||
int | len1, | ||
const char * | buff2, | ||
int | len2, | ||
const char * | buff3, | ||
int | len3 | ||
) |
Definition at line 1130 of file connection_support.c.
References css_send_io_vector_with_socket(), and css_set_io_vector().
Referenced by css_net_send3(), and css_send_request_with_socket().
int css_net_send_buffer_only | ( | CSS_CONN_ENTRY * | conn, |
const char * | buff, | ||
int | len, | ||
int | timeout | ||
) |
Definition at line 1453 of file connection_support.c.
References css_send_io_vector().
Definition at line 1068 of file connection_support.c.
References css_send_io_vector_with_socket(), and css_set_io_vector().
Referenced by css_net_send(), css_send_magic_with_socket(), and css_send_request_with_socket().
int css_platform_independent_poll | ( | POLL_FD * | fds, |
int | num_of_fds, | ||
int | timeout | ||
) |
Definition at line 2891 of file connection_support.c.
References assert, LOG_SYSTEM_TRAN_INDEX, NULL_TRAN_INDEX, rc, and css_conn_entry::transaction_id.
Referenced by hb_process_master_request().
void css_read_remaining_bytes | ( | SOCKET | fd, |
int | len | ||
) |
Definition at line 489 of file connection_support.c.
References css_readn(), and CSS_TRUNCATE_BUFFER_SIZE.
Referenced by css_net_recv(), css_queue_data_packet(), css_queue_error_packet(), css_receive_data(), and css_receive_error().
int css_readn | ( | SOCKET | fd, |
char * | ptr, | ||
int | nbytes, | ||
int | timeout | ||
) |
Definition at line 364 of file connection_support.c.
References ARG_FILE_LINE, css_server_timeout_fn, css_set_networking_error(), er_log_debug, and NULL.
Referenced by css_check_magic_with_socket(), css_connect_to_master_server(), css_get_master_request(), css_net_recv(), css_process_get_server_ha_mode(), css_process_shutdown_request(), css_read_remaining_bytes(), css_receive_heartbeat_data(), and css_receive_heartbeat_request().
void css_register_check_server_alive_fn | ( | CSS_CHECK_SERVER_ALIVE_FN | callback_fn | ) |
Definition at line 2131 of file connection_support.c.
References css_check_server_alive_fn.
Referenced by cas_init().
void css_register_server_timeout_fn | ( | CSS_SERVER_TIMEOUT_FN | callback_fn | ) |
Definition at line 2212 of file connection_support.c.
References ip_info::address_list, ARG_FILE_LINE, assert, boot_db_name(), css_check_ip(), css_free_ip_info(), css_read_ip_info(), css_server_timeout_fn, dbname, er_errid(), ER_ERROR_SEVERITY, ER_FAILED, ER_INACCESSIBLE_IP, ER_INVALID_ACCESS_IP_CONTROL_FILE_FORMAT, ER_OPEN_ACCESS_LIST_FILE, ER_OUT_OF_VIRTUAL_MEMORY, er_set(), er_set_with_oserror(), error(), free_and_init, i, INITIAL_IP_NUM, IP_BYTE_COUNT, NO_ERROR, NULL, ip_info::num_list, p, parse_int(), and strlen.
Referenced by cas_init().
int css_send_data | ( | CSS_CONN_ENTRY * | conn, |
unsigned short | rid, | ||
const char * | buffer, | ||
int | buffer_size | ||
) |
Definition at line 1852 of file connection_support.c.
References CANT_ALLOC_BUFFER, CONN_CLOSED, CONN_OPEN, CONNECTION_CLOSED, css_net_send2(), css_net_send4(), css_net_send6(), css_net_send8(), css_set_net_header(), DATA_TYPE, css_conn_entry::db_error, DEFAULT_HEADER_DATA, free_and_init, i, css_conn_entry::invalidate_snapshot, NULL, rc, and css_conn_entry::status.
Referenced by css_connect_to_master_server(), css_process_activate_heartbeat(), css_process_all_count_info(), css_process_all_list_info(), css_process_deact_confirm_no_server(), css_process_deact_confirm_stop_all(), css_process_deact_stop_all(), css_process_deactivate_heartbeat(), css_process_get_server_ha_mode(), css_process_ha_admin_info(), css_process_ha_deregister_by_args(), css_process_ha_deregister_by_pid(), css_process_ha_node_list_info(), css_process_ha_ping_host_info(), css_process_ha_process_list_info(), css_process_ha_start_util_process(), css_process_is_registered_ha_proc(), css_process_kill_all_ha_process(), css_process_kill_immediate(), css_process_kill_slave(), css_process_reconfig_heartbeat(), css_process_request_count_info(), css_process_server_count_info(), css_process_server_list_info(), css_process_server_state(), css_process_shutdown_time_info(), css_process_start_time_info(), css_reject_client_request(), css_send_data_to_client(), css_send_data_to_server(), css_send_reply_and_data_to_client(), css_send_reply_to_new_client_request(), css_send_to_existing_server(), and send_request_two_args().
int css_send_error | ( | CSS_CONN_ENTRY * | conn, |
unsigned short | rid, | ||
const char * | buffer, | ||
int | buffer_size | ||
) |
Definition at line 2041 of file connection_support.c.
References CONN_CLOSED, CONN_OPEN, CONNECTION_CLOSED, css_get_peer_name(), css_get_sock_name(), css_net_send2(), css_set_net_header(), css_conn_entry::db_error, DEFAULT_HEADER_DATA, ERROR_TYPE, css_conn_entry::fd, css_conn_entry::invalidate_snapshot, IS_INVALID_SOCKET, NO_ERRORS, OS_ERROR, and css_conn_entry::status.
Referenced by css_refuse_connection_request(), css_send_error_to_client(), and css_send_error_to_server().
int css_send_io_vector_with_socket | ( | SOCKET & | socket, |
struct iovec * | vec_p, | ||
ssize_t | total_len, | ||
int | vector_length, | ||
int | timeout | ||
) |
Definition at line 1027 of file connection_support.c.
References css_shutdown_socket(), css_vector_send(), ERROR_ON_WRITE, INVALID_SOCKET, IS_INVALID_SOCKET, NO_ERRORS, and rc.
Referenced by css_net_send3_with_socket(), css_net_send_with_socket(), and css_send_io_vector().
int css_send_magic | ( | CSS_CONN_ENTRY * | conn | ) |
Definition at line 2460 of file connection_support.c.
References css_send_magic_with_socket(), and css_conn_entry::fd.
Referenced by css_common_connect().
int css_send_magic_with_socket | ( | SOCKET & | socket | ) |
Definition at line 2466 of file connection_support.c.
References css_Net_magic, and css_net_send_with_socket().
Referenced by css_send_magic().
int css_send_request | ( | CSS_CONN_ENTRY * | conn, |
int | request, | ||
unsigned short * | rid, | ||
const char * | arg_buffer, | ||
int | arg_buffer_size | ||
) |
Definition at line 1803 of file connection_support.c.
References css_send_request_with_data_buffer().
Referenced by css_client_init(), css_common_connect(), get_server_state_from_master(), send_request_no_args(), send_request_one_arg(), and send_request_two_args().
int css_send_request_with_data_buffer | ( | CSS_CONN_ENTRY * | conn, |
int | request, | ||
unsigned short * | rid, | ||
const char * | arg_buffer, | ||
int | arg_buffer_size, | ||
char * | data_buffer, | ||
int | data_buffer_size | ||
) |
Definition at line 1510 of file connection_support.c.
References CANT_ALLOC_BUFFER, COMMAND_TYPE, CONN_OPEN, CONNECTION_CLOSED, css_get_request_id(), css_net_send(), css_net_send3(), css_net_send5(), css_net_send7(), css_queue_user_data_buffer(), css_send_request_with_data_buffer(), css_set_net_header(), DATA_TYPE, css_conn_entry::db_error, DEFAULT_HEADER_DATA, ERROR_ON_WRITE, free_and_init, i, css_conn_entry::invalidate_snapshot, NO_ERRORS, NULL, rc, and css_conn_entry::status.
Referenced by css_send_request(), css_send_request_to_server_with_buffer(), and css_send_request_with_data_buffer().
int css_send_request_with_socket | ( | SOCKET & | socket, |
int | command, | ||
unsigned short * | request_id, | ||
const char * | arg_buffer, | ||
int | arg_buffer_size | ||
) |
Definition at line 1810 of file connection_support.c.
References COMMAND_TYPE, CONNECTION_CLOSED, css_net_send3_with_socket(), css_net_send_with_socket(), css_set_net_header(), DATA_TYPE, DEFAULT_HEADER_DATA, ERROR_ON_WRITE, IS_INVALID_SOCKET, NO_ERRORS, NULL, and NULL_TRAN_INDEX.
void css_set_io_vector | ( | struct iovec * | vec1_p, |
struct iovec * | vec2_p, | ||
const char * | buff, | ||
int | len, | ||
int * | templen | ||
) |
Definition at line 994 of file connection_support.c.
References htonl().
Referenced by css_net_send2(), css_net_send3_with_socket(), css_net_send4(), css_net_send6(), css_net_send8(), and css_net_send_with_socket().
void css_set_net_header | ( | NET_HEADER * | header_p, |
int | type, | ||
short | function_code, | ||
int | request_id, | ||
int | buffer_size, | ||
int | transaction_id, | ||
int | invalidate_snapshot, | ||
int | db_error | ||
) |
Definition at line 1478 of file connection_support.c.
References packet_header::buffer_size, packet_header::db_error, packet_header::flags, packet_header::function_code, htonl(), htons(), NET_HEADER_FLAG_INVALIDATE_SNAPSHOT, packet_header::request_id, packet_header::transaction_id, and packet_header::type.
Referenced by css_send_data(), css_send_error(), css_send_request_with_data_buffer(), and css_send_request_with_socket().
int css_user_access_status_start_scan | ( | THREAD_ENTRY * | thread_p, |
int | type, | ||
DB_VALUE ** | arg_values, | ||
int | arg_cnt, | ||
void ** | ptr | ||
) |
Definition at line 2538 of file connection_support.c.
References ARG_FILE_LINE, assert, css_get_unused_access_status(), css_get_user_access_status(), css_make_access_status_exist_user(), css_Num_access_user, db_get_oid(), db_localdatetime(), db_make_datetime(), db_make_string_copy(), last_access_status::db_user, er_errid(), ER_ERROR_SEVERITY, ER_FAILED, ER_OUT_OF_VIRTUAL_MEMORY, er_set(), error(), free_and_init, last_access_status::host, NO_ERROR, NULL, last_access_status::program_name, showstmt_alloc_array_context(), showstmt_alloc_tuple_in_context(), showstmt_free_array_context(), and last_access_status::time.
Referenced by showstmt_scan_init().
int css_vector_send | ( | SOCKET | fd, |
struct iovec * | vec[], | ||
int * | len, | ||
int | bytes_written, | ||
int | timeout | ||
) |
Definition at line 893 of file connection_support.c.
References ARG_FILE_LINE, css_set_networking_error(), er_log_debug, and i.
Referenced by css_net_recv(), and css_send_io_vector_with_socket().
CSS_CHECK_SERVER_ALIVE_FN css_check_server_alive_fn |
Definition at line 109 of file connection_support.c.
Referenced by boot_client_all_finalize(), css_net_recv(), and css_register_check_server_alive_fn().