CUBRID Engine
latest
|
Go to the source code of this file.
Macros | |
#define | DB_CONNECT_ORDER_SEQ 0 |
#define | DB_CONNECT_ORDER_RANDOM 1 |
#define | DB_HS_NORMAL 0x00000000 |
#define | DB_HS_CONN_TIMEOUT 0x00000001 |
#define | DB_HS_CONN_FAILURE 0x00000002 |
#define | DB_HS_MISMATCHED_RW_MODE 0x00000004 |
#define | DB_HS_HA_DELAYED 0x00000008 |
#define | DB_HS_NON_PREFFERED_HOSTS 0x00000010 |
#define | DB_HS_UNUSABLE_DATABASES 0x00000020 |
#define | DB_HS_RECONNECT_INDICATOR (DB_HS_MISMATCHED_RW_MODE | DB_HS_HA_DELAYED | DB_HS_NON_PREFFERED_HOSTS) |
Functions | |
void | css_shutdown_conn (CSS_CONN_ENTRY *conn) |
CSS_CONN_ENTRY * | css_make_conn (SOCKET fd) |
void | css_free_conn (CSS_CONN_ENTRY *conn) |
CSS_CONN_ENTRY * | css_connect_to_master_server (int master_port_id, const char *server_name, int name_length) |
CSS_CONN_ENTRY * | css_find_exception_conn (void) |
int | css_receive_error (CSS_CONN_ENTRY *conn, unsigned short req_id, char **buffer, int *buffer_size) |
CSS_CONN_ENTRY * | css_connect_to_cubrid_server (char *host_name, char *server_name) |
CSS_CONN_ENTRY * | css_connect_to_master_for_info (const char *host_name, int port_id, unsigned short *rid) |
CSS_CONN_ENTRY * | css_connect_to_master_timeout (const char *host_name, int port_id, int timeout, unsigned short *rid) |
bool | css_does_master_exist (int port_id) |
int | css_receive_data (CSS_CONN_ENTRY *conn, unsigned short rid, char **buffer, int *size, int timeout) |
int | css_receive_request (CSS_CONN_ENTRY *conn, unsigned short *rid, int *request, int *arg_buffer_size) |
int | css_send_close_request (CSS_CONN_ENTRY *conn) |
int | css_test_for_open_conn (CSS_CONN_ENTRY *conn) |
CSS_CONN_ENTRY * | css_find_conn_from_fd (SOCKET fd) |
unsigned short | css_get_request_id (CSS_CONN_ENTRY *conn) |
char * | css_return_data_buffer (CSS_CONN_ENTRY *conn, unsigned short request_id, int *buffer_size) |
bool | css_is_valid_request_id (CSS_CONN_ENTRY *conn, unsigned short request_id) |
int | css_return_queued_error (CSS_CONN_ENTRY *conn, unsigned short request_id, char **buffer, int *buffer_size, int *rc) |
void | css_remove_all_unexpected_packets (CSS_CONN_ENTRY *conn) |
int | css_read_one_request (CSS_CONN_ENTRY *conn, unsigned short *rid, int *request, int *buffer_size) |
#define DB_CONNECT_ORDER_RANDOM 1 |
Definition at line 34 of file connection_cl.h.
Referenced by boot_client_all_finalize().
#define DB_CONNECT_ORDER_SEQ 0 |
Definition at line 33 of file connection_cl.h.
Referenced by boot_initialize_client(), boot_restart_client(), and conn_restart_client().
#define DB_HS_CONN_FAILURE 0x00000002 |
Definition at line 39 of file connection_cl.h.
Referenced by boot_client_all_finalize(), and report_abnormal_host_status().
#define DB_HS_CONN_TIMEOUT 0x00000001 |
Definition at line 38 of file connection_cl.h.
Referenced by boot_client_all_finalize(), and report_abnormal_host_status().
#define DB_HS_HA_DELAYED 0x00000008 |
Definition at line 41 of file connection_cl.h.
Referenced by check_server_capabilities(), db_need_ignore_repl_delay(), db_need_reconnect(), db_set_host_status(), and report_abnormal_host_status().
#define DB_HS_MISMATCHED_RW_MODE 0x00000004 |
Definition at line 40 of file connection_cl.h.
Referenced by check_server_capabilities(), and report_abnormal_host_status().
#define DB_HS_NON_PREFFERED_HOSTS 0x00000010 |
Definition at line 42 of file connection_cl.h.
Referenced by boot_restart_client(), and report_abnormal_host_status().
#define DB_HS_NORMAL 0x00000000 |
Definition at line 37 of file connection_cl.h.
Referenced by db_clear_host_status(), and db_set_connected_host_status().
#define DB_HS_RECONNECT_INDICATOR (DB_HS_MISMATCHED_RW_MODE | DB_HS_HA_DELAYED | DB_HS_NON_PREFFERED_HOSTS) |
Definition at line 45 of file connection_cl.h.
Referenced by db_need_reconnect().
#define DB_HS_UNUSABLE_DATABASES 0x00000020 |
Definition at line 43 of file connection_cl.h.
Referenced by boot_client_all_finalize(), and report_abnormal_host_status().
CSS_CONN_ENTRY* css_connect_to_cubrid_server | ( | char * | host_name, |
char * | server_name | ||
) |
Definition at line 1006 of file connection_cl.c.
References css_queue_entry::buffer, css_conn_entry::buffer_queue, css_close_conn(), css_find_queue_entry(), css_free_conn(), css_make_conn(), css_queue_remove_header_entry_ptr(), css_queue_user_data_buffer(), css_receive_data(), css_receive_error(), css_server_connect(), css_server_connect_part_two(), er_set_area_error(), free_and_init, NO_ERRORS, ntohl(), NULL, prm_get_integer_value(), PRM_ID_TCP_CONNECTION_TIMEOUT, SERVER_CLIENTS_EXCEEDED, SERVER_CONNECTED, SERVER_CONNECTED_NEW, SERVER_HANG, SERVER_INACCESSIBLE_IP, SERVER_IS_RECOVERING, SERVER_NOT_FOUND, and SERVER_STARTED.
Referenced by css_client_init().
CSS_CONN_ENTRY* css_connect_to_master_for_info | ( | const char * | host_name, |
int | port_id, | ||
unsigned short * | rid | ||
) |
Definition at line 1158 of file connection_cl.c.
References css_connect_to_master_timeout().
Referenced by main().
CSS_CONN_ENTRY* css_connect_to_master_server | ( | int | master_port_id, |
const char * | server_name, | ||
int | name_length | ||
) |
Definition at line 861 of file connection_cl.c.
CSS_CONN_ENTRY* css_connect_to_master_timeout | ( | const char * | host_name, |
int | port_id, | ||
int | timeout, | ||
unsigned short * | rid | ||
) |
Definition at line 1175 of file connection_cl.c.
References css_common_connect(), css_make_conn(), INFO_REQUEST, and NULL.
Referenced by connect_to_master_for_server_monitor(), and css_connect_to_master_for_info().
bool css_does_master_exist | ( | int | port_id | ) |
Definition at line 1197 of file connection_cl.c.
References css_shutdown_socket(), css_tcp_client_open_with_retry(), and IS_INVALID_SOCKET.
Referenced by check_all_services_status(), is_server_running(), main(), process_heartbeat_deregister(), process_heartbeat_reload(), process_heartbeat_replication(), process_heartbeat_start(), process_heartbeat_status(), process_heartbeat_stop(), process_master(), process_server(), and process_service().
CSS_CONN_ENTRY* css_find_conn_from_fd | ( | SOCKET | fd | ) |
Definition at line 256 of file connection_cl.c.
CSS_CONN_ENTRY* css_find_exception_conn | ( | void | ) |
Definition at line 245 of file connection_cl.c.
References NULL.
Referenced by css_handle_pipe_shutdown().
void css_free_conn | ( | CSS_CONN_ENTRY * | conn | ) |
Definition at line 234 of file connection_cl.c.
unsigned short css_get_request_id | ( | CSS_CONN_ENTRY * | conn | ) |
Definition at line 277 of file connection_cl.c.
bool css_is_valid_request_id | ( | CSS_CONN_ENTRY * | conn, |
unsigned short | request_id | ||
) |
Definition at line 1222 of file connection_cl.c.
References css_conn_entry::abort_queue, css_find_queue_entry(), css_conn_entry::data_queue, css_conn_entry::error_queue, NULL, and css_conn_entry::request_queue.
Referenced by css_get_request_id().
CSS_CONN_ENTRY* css_make_conn | ( | SOCKET | fd | ) |
Definition at line 167 of file connection_cl.c.
int css_read_one_request | ( | CSS_CONN_ENTRY * | conn, |
unsigned short * | rid, | ||
int * | request, | ||
int * | buffer_size | ||
) |
Definition at line 404 of file connection_cl.c.
References packet_header::buffer_size, COMMAND_TYPE, CONN_OPEN, CONNECTION_CLOSED, css_queue_unexpected_packet(), css_read_header(), css_return_queued_request(), DEFAULT_HEADER_DATA, packet_header::function_code, NO_ERRORS, ntohl(), ntohs(), NULL, rc, packet_header::request_id, css_conn_entry::status, packet_header::type, and WRONG_PACKET_TYPE.
Referenced by css_receive_request().
int css_receive_data | ( | CSS_CONN_ENTRY * | conn, |
unsigned short | rid, | ||
char ** | buffer, | ||
int * | size, | ||
int | timeout | ||
) |
Definition at line 482 of file connection_cl.c.
int css_receive_error | ( | CSS_CONN_ENTRY * | conn, |
unsigned short | req_id, | ||
char ** | buffer, | ||
int * | buffer_size | ||
) |
Definition at line 608 of file connection_cl.c.
References assert, begin(), packet_header::buffer_size, CANT_ALLOC_BUFFER, CONN_OPEN, CONNECTION_CLOSED, css_net_read_header(), css_net_recv(), css_queue_unexpected_error_packet(), css_queue_unexpected_packet(), css_read_remaining_bytes(), css_return_data_buffer(), css_return_queued_error(), packet_header::db_error, css_conn_entry::db_error, DEFAULT_HEADER_DATA, ERROR_TYPE, css_conn_entry::fd, NO_ERRORS, ntohl(), NULL, rc, RECORD_TRUNCATED, packet_header::request_id, css_conn_entry::status, packet_header::transaction_id, and packet_header::type.
Referenced by css_connect_to_cubrid_server(), and css_receive_data_from_server_with_timeout().
int css_receive_request | ( | CSS_CONN_ENTRY * | conn, |
unsigned short * | rid, | ||
int * | request, | ||
int * | arg_buffer_size | ||
) |
Definition at line 455 of file connection_cl.c.
void css_remove_all_unexpected_packets | ( | CSS_CONN_ENTRY * | conn | ) |
Definition at line 1467 of file connection_cl.c.
char* css_return_data_buffer | ( | CSS_CONN_ENTRY * | conn, |
unsigned short | request_id, | ||
int * | buffer_size | ||
) |
Definition at line 1266 of file connection_cl.c.
References css_queue_entry::buffer, css_conn_entry::buffer_queue, css_find_queue_entry(), css_queue_remove_header_entry_ptr(), NULL, and css_queue_entry::size.
Referenced by css_queue_data_packet(), css_receive_data(), and css_receive_error().
int css_return_queued_error | ( | CSS_CONN_ENTRY * | conn, |
unsigned short | request_id, | ||
char ** | buffer, | ||
int * | buffer_size, | ||
int * | rc | ||
) |
Definition at line 1364 of file connection_cl.c.
int css_send_close_request | ( | CSS_CONN_ENTRY * | conn | ) |
Definition at line 324 of file connection_cl.c.
References CLOSE_TYPE, CONN_CLOSED, CONN_OPEN, CONNECTION_CLOSED, css_net_send(), css_remove_all_unexpected_packets(), css_shutdown_conn(), packet_header::db_error, css_conn_entry::db_error, DEFAULT_HEADER_DATA, packet_header::flags, htonl(), css_conn_entry::invalidate_snapshot, NET_HEADER_FLAG_INVALIDATE_SNAPSHOT, NO_ERRORS, ntohs(), css_conn_entry::status, packet_header::transaction_id, and packet_header::type.
Referenced by css_terminate().
void css_shutdown_conn | ( | CSS_CONN_ENTRY * | conn | ) |
Definition at line 127 of file connection_cl.c.
int css_test_for_open_conn | ( | CSS_CONN_ENTRY * | conn | ) |
Definition at line 313 of file connection_cl.c.
References CONN_OPEN, and css_conn_entry::status.
Referenced by css_return_open_entry().