File shard_proxy_handler.c
FileList > broker > shard_proxy_handler.c
Go to the source code of this file
#include <assert.h>
#include "broker_config.h"
#include "broker_shm.h"
#include "shard_proxy_common.h"
#include "cas_protocol.h"
#include "cas_error.h"
#include "shard_shm.h"
#include "shard_proxy_handler.h"
#include "shard_proxy_io.h"
#include "shard_proxy_queue.h"
#include "shard_parser.h"
#include "shard_proxy_function.h"
Public Attributes
Public Static Attributes
Public Functions
| Type |
Name |
| T_CONTEXT_STMT * |
proxy_context_add_stmt (T_PROXY_CONTEXT * ctx_p, T_SHARD_STMT * stmt_p)
|
| void |
proxy_context_clear_error (T_PROXY_CONTEXT * ctx_p)
|
| T_PROXY_CONTEXT * |
proxy_context_find (int cid, unsigned int uid)
|
| T_PROXY_CONTEXT * |
proxy_context_find_by_socket_client_io (T_SOCKET_IO * sock_io_p)
|
| T_CONTEXT_STMT * |
proxy_context_find_stmt (T_PROXY_CONTEXT * ctx_p, int stmt_h_id)
|
| void |
proxy_context_free (T_PROXY_CONTEXT * ctx_p)
|
| void |
proxy_context_free_by_cid (int cid, unsigned int uid)
|
| void |
proxy_context_free_stmt (T_PROXY_CONTEXT * ctx_p)
|
| T_PROXY_CONTEXT * |
proxy_context_new (void)
|
| int |
proxy_context_send_error (T_PROXY_CONTEXT * ctx_p)
|
| void |
proxy_context_set_error (T_PROXY_CONTEXT * ctx_p, int error_ind, int error_code)
|
| void |
proxy_context_set_error_with_msg (T_PROXY_CONTEXT * ctx_p, int error_ind, int error_code, const char * error_msg)
|
| void |
proxy_context_set_in_tran (T_PROXY_CONTEXT * ctx_p, int shard_id, int cas_id)
|
| void |
proxy_context_set_out_tran (T_PROXY_CONTEXT * ctx_p)
|
| void |
proxy_context_timeout (T_PROXY_CONTEXT * ctx_p)
|
| int |
proxy_event_alloc_buffer (T_PROXY_EVENT * event_p, unsigned int size)
|
| T_PROXY_EVENT * |
proxy_event_dup (T_PROXY_EVENT * event_p)
|
| void |
proxy_event_free (T_PROXY_EVENT * event_p)
|
| bool |
proxy_event_io_read_complete (T_PROXY_EVENT * event_p)
|
| bool |
proxy_event_io_write_complete (T_PROXY_EVENT * event_p)
|
| T_PROXY_EVENT * |
proxy_event_new (unsigned int type, int from_cas)
|
| T_PROXY_EVENT * |
proxy_event_new_with_error (char * driver_info, unsigned int type, int from, int(*)(char *driver_info, char **buffer, int error_ind, int error_code, const char *error_msg, char is_in_tran) err_func, int error_ind, int error_code, const char * error_msg, char is_in_tran)
|
| T_PROXY_EVENT * |
proxy_event_new_with_req (char * driver_info, unsigned int type, int from, T_PROXY_EVENT_FUNC req_func)
|
| T_PROXY_EVENT * |
proxy_event_new_with_rsp (char * driver_info, unsigned int type, int from, T_PROXY_EVENT_FUNC resp_func)
|
| T_PROXY_EVENT * |
proxy_event_new_with_rsp_ex (char * driver_info, unsigned int type, int from, T_PROXY_EVENT_FUNC_EX resp_func, void * argv)
|
| int |
proxy_event_realloc_buffer (T_PROXY_EVENT * event_p, unsigned int size)
|
| void |
proxy_event_set_buffer (T_PROXY_EVENT * event_p, char * data, unsigned int size)
|
| void |
proxy_event_set_context (T_PROXY_EVENT * event_p, int cid, unsigned int uid)
|
| void |
proxy_event_set_shard (T_PROXY_EVENT * event_p, int shard_id, int cas_id)
|
| void |
proxy_event_set_type_from (T_PROXY_EVENT * event_p, unsigned int type, int from_cas)
|
| void |
proxy_handler_destroy (void)
|
| int |
proxy_handler_initialize (void)
|
| bool |
proxy_handler_is_cas_in_tran (int shard_id, int cas_id)
|
| void |
proxy_handler_process (void)
|
| char * |
proxy_str_context (T_PROXY_CONTEXT * ctx_p)
|
| char * |
proxy_str_event (T_PROXY_EVENT * event_p)
|
| void |
proxy_timer_process (void)
|
| int |
proxy_waiter_comp_fn (const void * arg1, const void * arg2)
|
| void |
proxy_waiter_free (T_WAIT_CONTEXT * waiter)
|
| T_WAIT_CONTEXT * |
proxy_waiter_new (int ctx_cid, unsigned int ctx_uid, int timeout)
|
| void |
proxy_waiter_timeout (T_SHARD_QUEUE * waitq, INT64 * counter, int now)
|
| int |
proxy_wakeup_context_by_shard (T_WAIT_CONTEXT * waiter_p, int shard_id, int cas_id)
|
| int |
proxy_wakeup_context_by_statement (T_WAIT_CONTEXT * waiter_p)
|
| char * |
shard_str_sqls (char * sql)
|
Public Static Functions
Macros
Public Attributes Documentation
variable parser
variable proxy_Context
T_PROXY_CONTEXT_GLOBAL proxy_Context;
variable proxy_Handler
T_PROXY_HANDLER proxy_Handler;
variable proxy_info_p
T_PROXY_INFO* proxy_info_p;
variable shm_as_p
T_SHM_APPL_SERVER* shm_as_p;
variable shm_proxy_p
T_SHM_PROXY* shm_proxy_p;
Public Static Attributes Documentation
variable proxy_cas_fn_table
T_PROXY_CAS_FUNC proxy_cas_fn_table[];
variable proxy_client_fn_table
T_PROXY_CLIENT_FUNC proxy_client_fn_table[];
Public Functions Documentation
function proxy_context_add_stmt
T_CONTEXT_STMT * proxy_context_add_stmt (
T_PROXY_CONTEXT * ctx_p,
T_SHARD_STMT * stmt_p
)
function proxy_context_clear_error
void proxy_context_clear_error (
T_PROXY_CONTEXT * ctx_p
)
function proxy_context_find
T_PROXY_CONTEXT * proxy_context_find (
int cid,
unsigned int uid
)
function proxy_context_find_by_socket_client_io
T_PROXY_CONTEXT * proxy_context_find_by_socket_client_io (
T_SOCKET_IO * sock_io_p
)
function proxy_context_find_stmt
T_CONTEXT_STMT * proxy_context_find_stmt (
T_PROXY_CONTEXT * ctx_p,
int stmt_h_id
)
function proxy_context_free
void proxy_context_free (
T_PROXY_CONTEXT * ctx_p
)
function proxy_context_free_by_cid
void proxy_context_free_by_cid (
int cid,
unsigned int uid
)
function proxy_context_free_stmt
void proxy_context_free_stmt (
T_PROXY_CONTEXT * ctx_p
)
function proxy_context_new
T_PROXY_CONTEXT * proxy_context_new (
void
)
function proxy_context_send_error
int proxy_context_send_error (
T_PROXY_CONTEXT * ctx_p
)
function proxy_context_set_error
void proxy_context_set_error (
T_PROXY_CONTEXT * ctx_p,
int error_ind,
int error_code
)
function proxy_context_set_error_with_msg
void proxy_context_set_error_with_msg (
T_PROXY_CONTEXT * ctx_p,
int error_ind,
int error_code,
const char * error_msg
)
function proxy_context_set_in_tran
void proxy_context_set_in_tran (
T_PROXY_CONTEXT * ctx_p,
int shard_id,
int cas_id
)
function proxy_context_set_out_tran
void proxy_context_set_out_tran (
T_PROXY_CONTEXT * ctx_p
)
function proxy_context_timeout
void proxy_context_timeout (
T_PROXY_CONTEXT * ctx_p
)
function proxy_event_alloc_buffer
int proxy_event_alloc_buffer (
T_PROXY_EVENT * event_p,
unsigned int size
)
function proxy_event_dup
T_PROXY_EVENT * proxy_event_dup (
T_PROXY_EVENT * event_p
)
function proxy_event_free
void proxy_event_free (
T_PROXY_EVENT * event_p
)
function proxy_event_io_read_complete
bool proxy_event_io_read_complete (
T_PROXY_EVENT * event_p
)
function proxy_event_io_write_complete
bool proxy_event_io_write_complete (
T_PROXY_EVENT * event_p
)
function proxy_event_new
T_PROXY_EVENT * proxy_event_new (
unsigned int type,
int from_cas
)
function proxy_event_new_with_error
T_PROXY_EVENT * proxy_event_new_with_error (
char * driver_info,
unsigned int type,
int from,
int (*)( char *driver_info, char **buffer, int error_ind, int error_code, const char *error_msg, char is_in_tran) err_func,
int error_ind,
int error_code,
const char * error_msg,
char is_in_tran
)
function proxy_event_new_with_req
T_PROXY_EVENT * proxy_event_new_with_req (
char * driver_info,
unsigned int type,
int from,
T_PROXY_EVENT_FUNC req_func
)
function proxy_event_new_with_rsp
T_PROXY_EVENT * proxy_event_new_with_rsp (
char * driver_info,
unsigned int type,
int from,
T_PROXY_EVENT_FUNC resp_func
)
function proxy_event_new_with_rsp_ex
T_PROXY_EVENT * proxy_event_new_with_rsp_ex (
char * driver_info,
unsigned int type,
int from,
T_PROXY_EVENT_FUNC_EX resp_func,
void * argv
)
function proxy_event_realloc_buffer
int proxy_event_realloc_buffer (
T_PROXY_EVENT * event_p,
unsigned int size
)
function proxy_event_set_buffer
void proxy_event_set_buffer (
T_PROXY_EVENT * event_p,
char * data,
unsigned int size
)
function proxy_event_set_context
void proxy_event_set_context (
T_PROXY_EVENT * event_p,
int cid,
unsigned int uid
)
function proxy_event_set_shard
void proxy_event_set_shard (
T_PROXY_EVENT * event_p,
int shard_id,
int cas_id
)
function proxy_event_set_type_from
void proxy_event_set_type_from (
T_PROXY_EVENT * event_p,
unsigned int type,
int from_cas
)
function proxy_handler_destroy
void proxy_handler_destroy (
void
)
function proxy_handler_initialize
int proxy_handler_initialize (
void
)
function proxy_handler_is_cas_in_tran
bool proxy_handler_is_cas_in_tran (
int shard_id,
int cas_id
)
function proxy_handler_process
void proxy_handler_process (
void
)
function proxy_str_context
char * proxy_str_context (
T_PROXY_CONTEXT * ctx_p
)
function proxy_str_event
char * proxy_str_event (
T_PROXY_EVENT * event_p
)
function proxy_timer_process
void proxy_timer_process (
void
)
function proxy_waiter_comp_fn
int proxy_waiter_comp_fn (
const void * arg1,
const void * arg2
)
function proxy_waiter_free
void proxy_waiter_free (
T_WAIT_CONTEXT * waiter
)
function proxy_waiter_new
T_WAIT_CONTEXT * proxy_waiter_new (
int ctx_cid,
unsigned int ctx_uid,
int timeout
)
function proxy_waiter_timeout
void proxy_waiter_timeout (
T_SHARD_QUEUE * waitq,
INT64 * counter,
int now
)
function proxy_wakeup_context_by_shard
int proxy_wakeup_context_by_shard (
T_WAIT_CONTEXT * waiter_p,
int shard_id,
int cas_id
)
function proxy_wakeup_context_by_statement
int proxy_wakeup_context_by_statement (
T_WAIT_CONTEXT * waiter_p
)
function shard_str_sqls
char * shard_str_sqls (
char * sql
)
Public Static Functions Documentation
function proxy_context_clear
static void proxy_context_clear (
T_PROXY_CONTEXT * ctx_p
)
function proxy_context_destroy
static void proxy_context_destroy (
void
)
function proxy_context_free_client
static void proxy_context_free_client (
T_PROXY_CONTEXT * ctx_p
)
function proxy_context_free_shard
static void proxy_context_free_shard (
T_PROXY_CONTEXT * ctx_p
)
function proxy_context_initialize
static int proxy_context_initialize (
void
)
function proxy_handler_process_cas_conn_error
static void proxy_handler_process_cas_conn_error (
T_PROXY_EVENT * event_p
)
function proxy_handler_process_cas_error
static int proxy_handler_process_cas_error (
T_PROXY_EVENT * event_p
)
function proxy_handler_process_cas_event
static void proxy_handler_process_cas_event (
T_PROXY_EVENT * event_p
)
function proxy_handler_process_cas_response
static void proxy_handler_process_cas_response (
T_PROXY_EVENT * event_p
)
function proxy_handler_process_client_conn_error
static void proxy_handler_process_client_conn_error (
T_PROXY_EVENT * event_p
)
function proxy_handler_process_client_event
static void proxy_handler_process_client_event (
T_PROXY_EVENT * event_p
)
function proxy_handler_process_client_request
static void proxy_handler_process_client_request (
T_PROXY_EVENT * event_p
)
function proxy_handler_process_client_wakeup_by_shard
static void proxy_handler_process_client_wakeup_by_shard (
T_PROXY_EVENT * event_p
)
function proxy_handler_process_client_wakeup_by_statement
static void proxy_handler_process_client_wakeup_by_statement (
T_PROXY_EVENT * event_p
)
Macro Definition Documentation
define PROXY_MAX_IGNORE_TIMER_CHECK
#define PROXY_MAX_IGNORE_TIMER_CHECK `10`
define PROXY_TIMER_CHECK_INTERVAL
#define PROXY_TIMER_CHECK_INTERVAL `1 /* sec */`
The documentation for this class was generated from the following file cubrid/src/broker/shard_proxy_handler.c