Skip to content

File connection_sr.c

FileList > connection > connection_sr.c

Go to the source code of this file

  • #include "config.h"
  • #include <filesystem>
  • #include <stdio.h>
  • #include <stdlib.h>
  • #include <string.h>
  • #include <errno.h>
  • #include <sys/types.h>
  • #include <assert.h>
  • #include <sys/time.h>
  • #include <sys/ioctl.h>
  • #include <sys/uio.h>
  • #include <sys/socket.h>
  • #include <netinet/in.h>
  • #include "porting.h"
  • #include "error_manager.h"
  • #include "connection_globals.h"
  • #include "filesys.hpp"
  • #include "filesys_temp.hpp"
  • #include "memory_alloc.h"
  • #include "environment_variable.h"
  • #include "system_parameter.h"
  • #include "critical_section.h"
  • #include "log_manager.h"
  • #include "object_representation.h"
  • #include "connection_error.h"
  • #include "log_impl.h"
  • #include "session.h"
  • #include "tcp.h"
  • #include "connection_context.hpp"
  • #include "connection_worker.hpp"
  • #include "connection_sr.h"
  • #include "server_support.h"
  • #include "thread_manager.hpp"
  • #include "memory_wrapper.hpp"

Classes

Type Name
struct queue_search_arg
struct wait_queue_search_arg

Public Types

Type Name
typedef struct queue_search_arg CSS_QUEUE_SEARCH_ARG
typedef struct wait_queue_search_arg CSS_WAIT_QUEUE_SEARCH_ARG

Public Attributes

Type Name
CSS_CONN_ENTRY * css_Active_conn_anchor = [**NULL**](freelistheap_8h.md#define-null)
CSS_CONN_ENTRY * css_Conn_array = [**NULL**](freelistheap_8h.md#define-null)
int css_Num_access_user = 0
SYNC_RWLOCK css_Rwlock_active_conn_anchor
SYNC_RWLOCK css_Rwlock_free_conn_anchor

Public Static Attributes

Type Name
const int CSS_MAX_CLIENT_ID = [**INT\_MAX**](broker__monitor_8c.md#function-timeout) - 1
LAST_ACCESS_STATUS * css_Access_status_anchor = [**NULL**](freelistheap_8h.md#define-null)
int css_Client_id = 0
pthread_mutex_t css_Client_id_lock = [**PTHREAD\_MUTEX\_INITIALIZER**](broker__monitor_8c.md#function-timeout)
pthread_mutex_t css_Conn_rule_lock = [**PTHREAD\_MUTEX\_INITIALIZER**](broker__monitor_8c.md#function-timeout)
CSS_CONN_ENTRY * css_Free_conn_anchor = [**NULL**](freelistheap_8h.md#define-null)
int css_Num_active_conn = 0
int css_Num_current_client = 0
int css_Num_free_conn = 0
int css_Num_max_client = 101
int css_Num_max_conn = 202
char ** css_Server_argv
char css_Server_exec_path

Public Functions

Type Name
css_error_code css_add_queue_entry (CSS_CONN_ENTRY * conn, CSS_LIST * list, unsigned short request_id, char * buffer, int buffer_size, int rc, int transid, int invalidate_snapshot, int db_error)
CSS_CONN_ENTRY * css_connect_to_master_server (int master_port_id, const char * server_name, int name_length)
void css_decrement_num_conn (BOOT_CLIENT_TYPE client_type)
void css_final_conn_list (void)
CSS_WAIT_QUEUE_ENTRY * css_find_and_remove_wait_queue_entry (CSS_LIST * list, unsigned int key)
CSS_CONN_ENTRY * css_find_conn_by_tran_index (int tran_index)
CSS_CONN_ENTRY * css_find_conn_from_fd (SOCKET fd)
void css_free_conn (CSS_CONN_ENTRY * conn)
void css_free_user_access_status (void)
void css_free_wait_queue_entry (CSS_CONN_ENTRY * conn, CSS_WAIT_QUEUE_ENTRY * entry)
char ** css_get_argv (void)
char * css_get_exec_path (void)
int css_get_num_free_conn (void)
unsigned short css_get_request_id (CSS_CONN_ENTRY * conn)
int css_get_session_ids_for_active_connections (SESSION_ID ** session_ids, int * count)
void css_get_user_access_status (int num_user, LAST_ACCESS_STATUS ** access_status_array)
int css_increment_num_conn (BOOT_CLIENT_TYPE client_type)
int css_init_conn_list (void)
int css_initialize_conn (CSS_CONN_ENTRY * conn, SOCKET fd)
void css_insert_into_active_conn_list (CSS_CONN_ENTRY * conn)
bool css_is_request_aborted (CSS_CONN_ENTRY * conn, unsigned short request_id)
CSS_CONN_ENTRY * css_make_conn (SOCKET fd)
void css_prepare_shutdown_conn (CSS_CONN_ENTRY * conn)
void css_print_conn_entry_info (CSS_CONN_ENTRY * conn)
void css_print_conn_list (void)
void css_print_free_conn_list (void)
void css_process_abort_packet (CSS_CONN_ENTRY * conn, unsigned short request_id)
int css_queue_user_data_buffer (CSS_CONN_ENTRY * conn, unsigned short request_id, int size, char * buffer)
int css_read_header (CSS_CONN_ENTRY * conn, const NET_HEADER * local_header)
int css_receive_data (CSS_CONN_ENTRY * conn, unsigned short req_id, char ** buffer, int * buffer_size, int timeout)
int css_receive_request (CSS_CONN_ENTRY * conn, unsigned short * rid, int * request, int * buffer_size)
void css_remove_all_unexpected_packets (CSS_CONN_ENTRY * conn)
void css_remove_unexpected_packets (CSS_CONN_ENTRY * conn, unsigned short request_id)
void css_request_release_packet (css_conn_entry * conn, void * buffer)
void css_request_shutdown_conn (css_conn_entry * conn, uint8_t ignore, bool retry, int wait_time)
unsigned int css_return_eid_from_conn (CSS_CONN_ENTRY * conn, unsigned short rid)
int css_return_queued_data (CSS_CONN_ENTRY * conn, unsigned short rid, char ** buffer, int * bufsize, int * rc)
int css_return_queued_error (CSS_CONN_ENTRY * conn, unsigned short request_id, char ** buffer, int * buffer_size, int * rc)
int css_return_queued_request (CSS_CONN_ENTRY * conn, unsigned short * rid, int * request, int * buffer_size)
void css_set_argv (char ** argv)
void css_set_exec_path (char * exec_path)
void css_set_user_access_status (const char * db_user, const char * host, const char * program_name)
void css_shutdown_conn (CSS_CONN_ENTRY * conn)
int css_shutdown_conn_by_tran_index (int tran_index, int wait_time)
void css_wakeup_handler (css_conn_entry * conn)

Public Static Functions

Type Name
void clear_wait_queue_entry_and_free_buffer (THREAD_ENTRY * thrdp, CSS_CONN_ENTRY * conn, unsigned short rid, char ** bufferp, int * sizep)
CSS_WAIT_QUEUE_ENTRY * css_add_wait_queue_entry (CSS_CONN_ENTRY * conn, CSS_LIST * list, unsigned short request_id, char ** buffer, int * buffer_size, int * rc)
CSS_QUEUE_ENTRY * css_claim_queue_entry (CSS_CONN_ENTRY * conn)
CSS_WAIT_QUEUE_ENTRY * css_claim_wait_queue_entry (CSS_CONN_ENTRY * conn)
CSS_CONN_ENTRY * css_common_connect (CSS_CONN_ENTRY * conn, unsigned short * rid, const char * host_name, int connect_type, const char * server_name, int server_name_length, int port)
void css_dealloc_conn (CSS_CONN_ENTRY * conn)
void css_decrement_num_conn_internal (CSS_CONN_RULE_INFO * conn_rule_info)
CSS_QUEUE_ENTRY * css_find_and_remove_queue_entry (CSS_LIST * list, unsigned int key)
CSS_QUEUE_ENTRY * css_find_queue_entry (CSS_LIST * list, unsigned int key)
int css_find_queue_entry_by_key (void * data, void * user)
void css_free_queue_entry (CSS_CONN_ENTRY * conn, CSS_QUEUE_ENTRY * entry)
void css_free_queue_entry_list (CSS_CONN_ENTRY * conn)
void css_free_wait_queue_list (CSS_CONN_ENTRY * conn)
int css_get_next_client_id (void)
int css_increment_num_conn_internal (CSS_CONN_RULE_INFO * conn_rule_info)
bool css_is_valid_request_id (CSS_CONN_ENTRY * conn, unsigned short request_id)
unsigned int css_make_eid (unsigned short entry_id, unsigned short rid)
CSS_QUEUE_ENTRY * css_make_queue_entry (CSS_CONN_ENTRY * conn, unsigned int key, char * buffer, int size, int rc, int transid, int invalidate_snapshot, int db_error)
CSS_WAIT_QUEUE_ENTRY * css_make_wait_queue_entry (CSS_CONN_ENTRY * conn, unsigned int key, char ** buffer, int * size, int * rc)
void css_process_close_packet (CSS_CONN_ENTRY * conn)
css_error_code css_queue_command_packet (CSS_CONN_ENTRY * conn, unsigned short request_id, const NET_HEADER * header, int size)
void css_queue_data_packet (CSS_CONN_ENTRY * conn, unsigned short request_id, const NET_HEADER * header, THREAD_ENTRY ** wait_thrd)
void css_queue_error_packet (CSS_CONN_ENTRY * conn, unsigned short request_id, const NET_HEADER * header)
css_error_code css_queue_packet (CSS_CONN_ENTRY * conn, int type, unsigned short request_id, const NET_HEADER * header, int size)
int css_remove_and_free_queue_entry (void * data, void * arg)
int css_remove_and_free_wait_queue_entry (void * data, void * arg)
void css_retire_queue_entry (CSS_CONN_ENTRY * conn, CSS_QUEUE_ENTRY * entry)
void css_retire_wait_queue_entry (CSS_CONN_ENTRY * conn, CSS_WAIT_QUEUE_ENTRY * entry)
int css_return_queued_data_timeout (CSS_CONN_ENTRY * conn, unsigned short rid, char ** buffer, int * bufsize, int * rc, int waitsec)
void css_set_proc_register (const char * server_name, int server_name_length, CSS_SERVER_PROC_REGISTER * proc_register)
int find_wait_queue_entry_by_key (void * data, void * user)

Macros

Type Name
define CSS_ACTIVE_CONN_ARGS [**css\_Num\_active\_conn**](connection__sr_8c.md#variable-css_num_active_conn), [**CSS\_CONN\_IDX**](connection__sr_8c.md#define-css_conn_idx) ([**css\_Active\_conn\_anchor**](connection__sr_8c.md#variable-css_active_conn_anchor))
define CSS_ACTIVE_CONN_MSG "Active count = %d, head = %[**d"**](broker__monitor_8c.md#function-timeout)
define CSS_CONN_IDX (conn_arg) (([**conn\_arg**](broker__monitor_8c.md#function-timeout)) - [**css\_Conn\_array**](connection__sr_8c.md#variable-css_conn_array))
define CSS_FREE_CONN_ARGS [**css\_Num\_free\_conn**](connection__sr_8c.md#variable-css_num_free_conn), [**CSS\_CONN\_IDX**](connection__sr_8c.md#define-css_conn_idx) ([**css\_Free\_conn\_anchor**](connection__sr_8c.md#variable-css_free_conn_anchor))
define CSS_FREE_CONN_MSG "Free count = %d, head = %[**d"**](broker__monitor_8c.md#function-timeout)
define NUM_NORMAL_CLIENTS ([**prm\_get\_integer\_value**](system__parameter_8h.md#function-prm_get_integer_value)(PRM\_ID\_CSS\_MAX\_CLIENTS))
define RMUTEX_NAME_CONN_ENTRY "CONN\_ENTRY"
define TRACE (string, arg)

Public Types Documentation

typedef CSS_QUEUE_SEARCH_ARG

typedef struct queue_search_arg CSS_QUEUE_SEARCH_ARG;

typedef CSS_WAIT_QUEUE_SEARCH_ARG

typedef struct wait_queue_search_arg CSS_WAIT_QUEUE_SEARCH_ARG;

Public Attributes Documentation

variable css_Active_conn_anchor

CSS_CONN_ENTRY* css_Active_conn_anchor;

variable css_Conn_array

CSS_CONN_ENTRY* css_Conn_array;

variable css_Num_access_user

int css_Num_access_user;

variable css_Rwlock_active_conn_anchor

SYNC_RWLOCK css_Rwlock_active_conn_anchor;

variable css_Rwlock_free_conn_anchor

SYNC_RWLOCK css_Rwlock_free_conn_anchor;

Public Static Attributes Documentation

variable CSS_MAX_CLIENT_ID

const int CSS_MAX_CLIENT_ID;

variable css_Access_status_anchor

LAST_ACCESS_STATUS* css_Access_status_anchor;

variable css_Client_id

int css_Client_id;

variable css_Client_id_lock

pthread_mutex_t css_Client_id_lock;

variable css_Conn_rule_lock

pthread_mutex_t css_Conn_rule_lock;

variable css_Free_conn_anchor

CSS_CONN_ENTRY* css_Free_conn_anchor;

variable css_Num_active_conn

int css_Num_active_conn;

variable css_Num_current_client

int css_Num_current_client;

variable css_Num_free_conn

int css_Num_free_conn;

variable css_Num_max_client

int css_Num_max_client;

variable css_Num_max_conn

int css_Num_max_conn;

variable css_Server_argv

char** css_Server_argv;

variable css_Server_exec_path

char css_Server_exec_path[PATH_MAX];

Public Functions Documentation

function css_add_queue_entry

css_error_code css_add_queue_entry (
    CSS_CONN_ENTRY * conn,
    CSS_LIST * list,
    unsigned  short request_id,
    char * buffer,
    int buffer_size,
    int rc,
    int transid,
    int invalidate_snapshot,
    int db_error
) 

function css_connect_to_master_server

CSS_CONN_ENTRY * css_connect_to_master_server (
    int master_port_id,
    const  char * server_name,
    int name_length
) 

function css_decrement_num_conn

void css_decrement_num_conn (
    BOOT_CLIENT_TYPE client_type
) 

function css_final_conn_list

void css_final_conn_list (
    void
) 

function css_find_and_remove_wait_queue_entry

CSS_WAIT_QUEUE_ENTRY * css_find_and_remove_wait_queue_entry (
    CSS_LIST * list,
    unsigned  int key
) 

function css_find_conn_by_tran_index

CSS_CONN_ENTRY * css_find_conn_by_tran_index (
    int tran_index
) 

function css_find_conn_from_fd

CSS_CONN_ENTRY * css_find_conn_from_fd (
    SOCKET fd
) 

function css_free_conn

void css_free_conn (
    CSS_CONN_ENTRY * conn
) 

function css_free_user_access_status

void css_free_user_access_status (
    void
) 

function css_free_wait_queue_entry

void css_free_wait_queue_entry (
    CSS_CONN_ENTRY * conn,
    CSS_WAIT_QUEUE_ENTRY * entry
) 

function css_get_argv

char ** css_get_argv (
    void
) 

function css_get_exec_path

char * css_get_exec_path (
    void
) 

function css_get_num_free_conn

int css_get_num_free_conn (
    void
) 

function css_get_request_id

unsigned  short css_get_request_id (
    CSS_CONN_ENTRY * conn
) 

function css_get_session_ids_for_active_connections

int css_get_session_ids_for_active_connections (
    SESSION_ID ** session_ids,
    int * count
) 

function css_get_user_access_status

void css_get_user_access_status (
    int num_user,
    LAST_ACCESS_STATUS ** access_status_array
) 

function css_increment_num_conn

int css_increment_num_conn (
    BOOT_CLIENT_TYPE client_type
) 

function css_init_conn_list

int css_init_conn_list (
    void
) 

function css_initialize_conn

int css_initialize_conn (
    CSS_CONN_ENTRY * conn,
    SOCKET fd
) 

function css_insert_into_active_conn_list

void css_insert_into_active_conn_list (
    CSS_CONN_ENTRY * conn
) 

function css_is_request_aborted

bool css_is_request_aborted (
    CSS_CONN_ENTRY * conn,
    unsigned  short request_id
) 

function css_make_conn

CSS_CONN_ENTRY * css_make_conn (
    SOCKET fd
) 

function css_prepare_shutdown_conn

void css_prepare_shutdown_conn (
    CSS_CONN_ENTRY * conn
) 

function css_print_conn_entry_info

void css_print_conn_entry_info (
    CSS_CONN_ENTRY * conn
) 

function css_print_conn_list

void css_print_conn_list (
    void
) 

function css_print_free_conn_list

void css_print_free_conn_list (
    void
) 

function css_process_abort_packet

void css_process_abort_packet (
    CSS_CONN_ENTRY * conn,
    unsigned  short request_id
) 

function css_queue_user_data_buffer

int css_queue_user_data_buffer (
    CSS_CONN_ENTRY * conn,
    unsigned  short request_id,
    int size,
    char * buffer
) 

function css_read_header

int css_read_header (
    CSS_CONN_ENTRY * conn,
    const  NET_HEADER * local_header
) 

function css_receive_data

int css_receive_data (
    CSS_CONN_ENTRY * conn,
    unsigned  short req_id,
    char ** buffer,
    int * buffer_size,
    int timeout
) 

function css_receive_request

int css_receive_request (
    CSS_CONN_ENTRY * conn,
    unsigned  short * rid,
    int * request,
    int * buffer_size
) 

function css_remove_all_unexpected_packets

void css_remove_all_unexpected_packets (
    CSS_CONN_ENTRY * conn
) 

function css_remove_unexpected_packets

void css_remove_unexpected_packets (
    CSS_CONN_ENTRY * conn,
    unsigned  short request_id
) 

function css_request_release_packet

void css_request_release_packet (
    css_conn_entry * conn,
    void * buffer
) 

function css_request_shutdown_conn

void css_request_shutdown_conn (
    css_conn_entry * conn,
    uint8_t ignore,
    bool retry,
    int wait_time
) 

function css_return_eid_from_conn

unsigned  int css_return_eid_from_conn (
    CSS_CONN_ENTRY * conn,
    unsigned  short rid
) 

function css_return_queued_data

int css_return_queued_data (
    CSS_CONN_ENTRY * conn,
    unsigned  short rid,
    char ** buffer,
    int * bufsize,
    int * rc
) 

function css_return_queued_error

int css_return_queued_error (
    CSS_CONN_ENTRY * conn,
    unsigned  short request_id,
    char ** buffer,
    int * buffer_size,
    int * rc
) 

function css_return_queued_request

int css_return_queued_request (
    CSS_CONN_ENTRY * conn,
    unsigned  short * rid,
    int * request,
    int * buffer_size
) 

function css_set_argv

void css_set_argv (
    char ** argv
) 

function css_set_exec_path

void css_set_exec_path (
    char * exec_path
) 

function css_set_user_access_status

void css_set_user_access_status (
    const  char * db_user,
    const  char * host,
    const  char * program_name
) 

function css_shutdown_conn

void css_shutdown_conn (
    CSS_CONN_ENTRY * conn
) 

function css_shutdown_conn_by_tran_index

int css_shutdown_conn_by_tran_index (
    int tran_index,
    int wait_time
) 

function css_wakeup_handler

void css_wakeup_handler (
    css_conn_entry * conn
) 

Public Static Functions Documentation

function clear_wait_queue_entry_and_free_buffer

static void clear_wait_queue_entry_and_free_buffer (
    THREAD_ENTRY * thrdp,
    CSS_CONN_ENTRY * conn,
    unsigned  short rid,
    char ** bufferp,
    int * sizep
) 

function css_add_wait_queue_entry

static CSS_WAIT_QUEUE_ENTRY * css_add_wait_queue_entry (
    CSS_CONN_ENTRY * conn,
    CSS_LIST * list,
    unsigned  short request_id,
    char ** buffer,
    int * buffer_size,
    int * rc
) 

function css_claim_queue_entry

static CSS_QUEUE_ENTRY * css_claim_queue_entry (
    CSS_CONN_ENTRY * conn
) 

function css_claim_wait_queue_entry

static CSS_WAIT_QUEUE_ENTRY * css_claim_wait_queue_entry (
    CSS_CONN_ENTRY * conn
) 

function css_common_connect

static CSS_CONN_ENTRY * css_common_connect (
    CSS_CONN_ENTRY * conn,
    unsigned  short * rid,
    const  char * host_name,
    int connect_type,
    const  char * server_name,
    int server_name_length,
    int port
) 

function css_dealloc_conn

static void css_dealloc_conn (
    CSS_CONN_ENTRY * conn
) 

function css_decrement_num_conn_internal

static void css_decrement_num_conn_internal (
    CSS_CONN_RULE_INFO * conn_rule_info
) 

function css_find_and_remove_queue_entry

static CSS_QUEUE_ENTRY * css_find_and_remove_queue_entry (
    CSS_LIST * list,
    unsigned  int key
) 

function css_find_queue_entry

static CSS_QUEUE_ENTRY * css_find_queue_entry (
    CSS_LIST * list,
    unsigned  int key
) 

function css_find_queue_entry_by_key

static int css_find_queue_entry_by_key (
    void * data,
    void * user
) 

function css_free_queue_entry

static void css_free_queue_entry (
    CSS_CONN_ENTRY * conn,
    CSS_QUEUE_ENTRY * entry
) 

function css_free_queue_entry_list

static void css_free_queue_entry_list (
    CSS_CONN_ENTRY * conn
) 

function css_free_wait_queue_list

static void css_free_wait_queue_list (
    CSS_CONN_ENTRY * conn
) 

function css_get_next_client_id

static int css_get_next_client_id (
    void
) 

function css_increment_num_conn_internal

static int css_increment_num_conn_internal (
    CSS_CONN_RULE_INFO * conn_rule_info
) 

function css_is_valid_request_id

static bool css_is_valid_request_id (
    CSS_CONN_ENTRY * conn,
    unsigned  short request_id
) 

function css_make_eid

static unsigned  int css_make_eid (
    unsigned  short entry_id,
    unsigned  short rid
) 

function css_make_queue_entry

static CSS_QUEUE_ENTRY * css_make_queue_entry (
    CSS_CONN_ENTRY * conn,
    unsigned  int key,
    char * buffer,
    int size,
    int rc,
    int transid,
    int invalidate_snapshot,
    int db_error
) 

function css_make_wait_queue_entry

static CSS_WAIT_QUEUE_ENTRY * css_make_wait_queue_entry (
    CSS_CONN_ENTRY * conn,
    unsigned  int key,
    char ** buffer,
    int * size,
    int * rc
) 

function css_process_close_packet

static void css_process_close_packet (
    CSS_CONN_ENTRY * conn
) 

function css_queue_command_packet

static css_error_code css_queue_command_packet (
    CSS_CONN_ENTRY * conn,
    unsigned  short request_id,
    const  NET_HEADER * header,
    int size
) 

function css_queue_data_packet

static void css_queue_data_packet (
    CSS_CONN_ENTRY * conn,
    unsigned  short request_id,
    const  NET_HEADER * header,
    THREAD_ENTRY ** wait_thrd
) 

function css_queue_error_packet

static void css_queue_error_packet (
    CSS_CONN_ENTRY * conn,
    unsigned  short request_id,
    const  NET_HEADER * header
) 

function css_queue_packet

static css_error_code css_queue_packet (
    CSS_CONN_ENTRY * conn,
    int type,
    unsigned  short request_id,
    const  NET_HEADER * header,
    int size
) 

function css_remove_and_free_queue_entry

static int css_remove_and_free_queue_entry (
    void * data,
    void * arg
) 

function css_remove_and_free_wait_queue_entry

static int css_remove_and_free_wait_queue_entry (
    void * data,
    void * arg
) 

function css_retire_queue_entry

static void css_retire_queue_entry (
    CSS_CONN_ENTRY * conn,
    CSS_QUEUE_ENTRY * entry
) 

function css_retire_wait_queue_entry

static void css_retire_wait_queue_entry (
    CSS_CONN_ENTRY * conn,
    CSS_WAIT_QUEUE_ENTRY * entry
) 

function css_return_queued_data_timeout

static int css_return_queued_data_timeout (
    CSS_CONN_ENTRY * conn,
    unsigned  short rid,
    char ** buffer,
    int * bufsize,
    int * rc,
    int waitsec
) 

function css_set_proc_register

static void css_set_proc_register (
    const  char * server_name,
    int server_name_length,
    CSS_SERVER_PROC_REGISTER * proc_register
) 

function find_wait_queue_entry_by_key

static int find_wait_queue_entry_by_key (
    void * data,
    void * user
) 

Macro Definition Documentation

define CSS_ACTIVE_CONN_ARGS

#define CSS_ACTIVE_CONN_ARGS `css_Num_active_conn , CSS_CONN_IDX ( css_Active_conn_anchor )`

define CSS_ACTIVE_CONN_MSG

#define CSS_ACTIVE_CONN_MSG `"Active count = %d, head = % d"`

define CSS_CONN_IDX

#define CSS_CONN_IDX (
    conn_arg
) `(( conn_arg ) - css_Conn_array )`

define CSS_FREE_CONN_ARGS

#define CSS_FREE_CONN_ARGS `css_Num_free_conn , CSS_CONN_IDX ( css_Free_conn_anchor )`

define CSS_FREE_CONN_MSG

#define CSS_FREE_CONN_MSG `"Free count = %d, head = % d"`

define NUM_NORMAL_CLIENTS

#define NUM_NORMAL_CLIENTS `( prm_get_integer_value ( PRM_ID_CSS_MAX_CLIENTS ))`

define RMUTEX_NAME_CONN_ENTRY

#define RMUTEX_NAME_CONN_ENTRY `"CONN_ENTRY"`

define TRACE

#define TRACE (
    string,
    arg
) 


The documentation for this class was generated from the following file cubrid/src/connection/connection_sr.c