summaryrefslogtreecommitdiffstats
path: root/storage/spider/spd_include.h
diff options
context:
space:
mode:
Diffstat (limited to 'storage/spider/spd_include.h')
-rw-r--r--storage/spider/spd_include.h281
1 files changed, 280 insertions, 1 deletions
diff --git a/storage/spider/spd_include.h b/storage/spider/spd_include.h
index 4763cd89..0f61984e 100644
--- a/storage/spider/spd_include.h
+++ b/storage/spider/spd_include.h
@@ -168,6 +168,279 @@ typedef start_new_trans *SPIDER_Open_tables_backup;
#define SPIDER_MEM_CALC_LIST_NUM 314
#define SPIDER_CONN_META_BUF_LEN 64
+/*
+ IDs for spider mem alloc functions, including
+ - spider_alloc_calc_mem_init()
+ - spider_string::init_calc_mem()
+ - spider_malloc()
+ - spider_bulk_alloc_mem()
+ - spider_bulk_malloc()
+ In the format of
+ SPD_MID_<CALLSITE_FUNC_NAME_SANS_SPIDER_PREFIX>_<NO>
+*/
+enum spider_malloc_id {
+ SPD_MID_CHECK_HS_PK_UPDATE_1,
+ SPD_MID_COPY_TABLES_BODY_1,
+ SPD_MID_COPY_TABLES_BODY_2,
+ SPD_MID_COPY_TABLES_BODY_3,
+ SPD_MID_COPY_TABLES_BODY_4,
+ SPD_MID_COPY_TABLES_BODY_5,
+ SPD_MID_CREATE_CONN_1,
+ SPD_MID_CREATE_CONN_2,
+ SPD_MID_CREATE_CONN_3,
+ SPD_MID_CREATE_CONN_4,
+ SPD_MID_CREATE_CONN_5,
+ SPD_MID_CREATE_CONN_6,
+ SPD_MID_CREATE_CONN_KEYS_1,
+ SPD_MID_CREATE_CONN_THREAD_1,
+ SPD_MID_CREATE_LONGLONG_LIST_1,
+ SPD_MID_CREATE_LONG_LIST_1,
+ SPD_MID_CREATE_MON_THREADS_1,
+ SPD_MID_CREATE_MON_THREADS_2,
+ SPD_MID_CREATE_SHARE_1,
+ SPD_MID_CREATE_SHARE_2,
+ SPD_MID_CREATE_SPIDER_OBJECT_FOR_SHARE_1,
+ SPD_MID_CREATE_SPIDER_OBJECT_FOR_SHARE_2,
+ SPD_MID_CREATE_STRING_1,
+ SPD_MID_CREATE_STRING_LIST_1,
+ SPD_MID_CREATE_TABLE_HOLDER_1,
+ SPD_MID_CREATE_TABLE_NAME_STRING_1,
+ SPD_MID_CREATE_TRX_ALTER_TABLE_1,
+ SPD_MID_CREATE_TRX_HA_1,
+ SPD_MID_DB_CONN_QUEUE_ACTION_1,
+ SPD_MID_DB_FETCH_FOR_ITEM_SUM_FUNC_1,
+ SPD_MID_DB_FETCH_FOR_ITEM_SUM_FUNC_2,
+ SPD_MID_DB_FETCH_FOR_ITEM_SUM_FUNC_3,
+ SPD_MID_DB_HANDLERSOCKET_APPEND_REQUEST_KEY_1,
+ SPD_MID_DB_HANDLERSOCKET_EXEC_QUERY_1,
+ SPD_MID_DB_HANDLERSOCKET_INIT_1,
+ SPD_MID_DB_HANDLERSOCKET_RESULT_FETCH_ROW_FROM_TMP_TABLE_1,
+ SPD_MID_DB_HANDLERSOCKET_RESULT_FETCH_ROW_FROM_TMP_TABLE_2,
+ SPD_MID_DB_HANDLERSOCKET_ROW_APPEND_ESCAPED_TO_STR_1,
+ SPD_MID_DB_HANDLERSOCKET_ROW_CLONE_1,
+ SPD_MID_DB_HANDLERSOCKET_ROW_STORE_TO_FIELD_1,
+ SPD_MID_DB_HANDLERSOCKET_UTIL_APPEND_COLUMN_VALUE_1,
+ SPD_MID_DB_HANDLERSOCKET_UTIL_OPEN_ITEM_FUNC_1,
+ SPD_MID_DB_HANDLERSOCKET_UTIL_OPEN_ITEM_FUNC_2,
+ SPD_MID_DB_HANDLERSOCKET_UTIL_OPEN_ITEM_FUNC_3,
+ SPD_MID_DB_HS_STRING_REF_BUFFER_INIT_1,
+ SPD_MID_DB_HS_STR_BUFFER_ADD_1,
+ SPD_MID_DB_HS_STR_BUFFER_ADD_2,
+ SPD_MID_DB_HS_STR_BUFFER_INIT_1,
+ SPD_MID_DB_INIT_1,
+ SPD_MID_DB_INIT_10,
+ SPD_MID_DB_INIT_11,
+ SPD_MID_DB_INIT_12,
+ SPD_MID_DB_INIT_2,
+ SPD_MID_DB_INIT_3,
+ SPD_MID_DB_INIT_4,
+ SPD_MID_DB_INIT_5,
+ SPD_MID_DB_INIT_6,
+ SPD_MID_DB_INIT_7,
+ SPD_MID_DB_INIT_8,
+ SPD_MID_DB_INIT_9,
+ SPD_MID_DB_MARIADB_UTIL_APPEND_COLUMN_VALUE_1,
+ SPD_MID_DB_MARIADB_UTIL_APPEND_COLUMN_VALUE_2,
+ SPD_MID_DB_MBASE_EXEC_QUERY_1,
+ SPD_MID_DB_MBASE_EXEC_QUERY_2,
+ SPD_MID_DB_MBASE_INIT_1,
+ SPD_MID_DB_MBASE_INIT_2,
+ SPD_MID_DB_MBASE_RESULT_FETCH_ROW_FROM_TMP_TABLE_1,
+ SPD_MID_DB_MBASE_RESULT_FETCH_ROW_FROM_TMP_TABLE_2,
+ SPD_MID_DB_MBASE_RESULT_FETCH_ROW_FROM_TMP_TABLE_3,
+ SPD_MID_DB_MBASE_ROW_APPEND_ESCAPED_TO_STR_1,
+ SPD_MID_DB_MBASE_ROW_CLONE_1,
+ SPD_MID_DB_MBASE_SET_LOOP_CHECK_1,
+ SPD_MID_DB_MBASE_SET_SQL_MODE_1,
+ SPD_MID_DB_MBASE_SET_TIME_ZONE_1,
+ SPD_MID_DB_MBASE_SET_WAIT_TIMEOUT_1,
+ SPD_MID_DB_MBASE_UTIL_PRINT_ITEM_FUNC_1,
+ SPD_MID_DB_MBASE_UTIL_PRINT_ITEM_FUNC_2,
+ SPD_MID_DB_MBASE_UTIL_PRINT_ITEM_FUNC_3,
+ SPD_MID_DB_MBASE_XA_COMMIT_1,
+ SPD_MID_DB_MBASE_XA_END_1,
+ SPD_MID_DB_MBASE_XA_PREPARE_1,
+ SPD_MID_DB_MBASE_XA_ROLLBACK_1,
+ SPD_MID_DB_MYSQL_UTIL_APPEND_COLUMN_VALUE_1,
+ SPD_MID_DB_MYSQL_UTIL_APPEND_COLUMN_VALUE_2,
+ SPD_MID_DB_OPEN_ITEM_INT_1,
+ SPD_MID_DB_OPEN_ITEM_STRING_1,
+ SPD_MID_DB_ORACLE_EXEC_QUERY_1,
+ SPD_MID_DB_ORACLE_GET_ERROR_1,
+ SPD_MID_DB_ORACLE_INIT_1,
+ SPD_MID_DB_ORACLE_INIT_2,
+ SPD_MID_DB_ORACLE_RESULT_FETCH_ROW_FROM_TMP_TABLE_1,
+ SPD_MID_DB_ORACLE_RESULT_FETCH_ROW_FROM_TMP_TABLE_2,
+ SPD_MID_DB_ORACLE_RESULT_FETCH_ROW_FROM_TMP_TABLE_3,
+ SPD_MID_DB_ORACLE_ROW_APPEND_ESCAPED_TO_STR_1,
+ SPD_MID_DB_ORACLE_ROW_INIT_1,
+ SPD_MID_DB_ORACLE_ROW_INIT_2,
+ SPD_MID_DB_ORACLE_UTIL_APPEND_COLUMN_VALUE_1,
+ SPD_MID_DB_ORACLE_UTIL_APPEND_COLUMN_VALUE_2,
+ SPD_MID_DB_ORACLE_UTIL_OPEN_ITEM_FUNC_1,
+ SPD_MID_DB_ORACLE_UTIL_OPEN_ITEM_FUNC_2,
+ SPD_MID_DB_ORACLE_UTIL_OPEN_ITEM_FUNC_3,
+ SPD_MID_DB_QUERY_1,
+ SPD_MID_DB_STORE_RESULT_1,
+ SPD_MID_DB_STORE_RESULT_2,
+ SPD_MID_DB_STORE_RESULT_3,
+ SPD_MID_DB_STORE_RESULT_4,
+ SPD_MID_DB_STORE_RESULT_5,
+ SPD_MID_DB_STORE_RESULT_FOR_REUSE_CURSOR_1,
+ SPD_MID_DB_UDF_COPY_TABLES_1,
+ SPD_MID_DB_UDF_PING_TABLE_1,
+ SPD_MID_DB_UDF_PING_TABLE_2,
+ SPD_MID_DB_UDF_PING_TABLE_APPEND_MON_NEXT_1,
+ SPD_MID_DB_UDF_PING_TABLE_APPEND_MON_NEXT_2,
+ SPD_MID_DB_UDF_PING_TABLE_MON_NEXT_1,
+ SPD_MID_DIRECT_SQL_BODY_1,
+ SPD_MID_DIRECT_SQL_INIT_BODY_1,
+ SPD_MID_DISCOVER_TABLE_STRUCTURE_1,
+ SPD_MID_FIELDS_CREATE_CONN_HOLDER_1,
+ SPD_MID_FIELDS_CREATE_LINK_IDX_CHAIN_1,
+ SPD_MID_FIELDS_CREATE_LINK_IDX_HOLDER_1,
+ SPD_MID_GET_INIT_ERROR_TABLE_1,
+ SPD_MID_GET_LGTM_TBLHND_SHARE_1,
+ SPD_MID_GET_PING_TABLE_MON_1,
+ SPD_MID_GET_PING_TABLE_TGT_1,
+ SPD_MID_GET_PT_SHARE_1,
+ SPD_MID_GET_PT_SHARE_2,
+ SPD_MID_GET_SHARE_1,
+ SPD_MID_GET_SHARE_2,
+ SPD_MID_GET_TRX_1,
+ SPD_MID_GET_TRX_10,
+ SPD_MID_GET_TRX_2,
+ SPD_MID_GET_TRX_3,
+ SPD_MID_GET_TRX_4,
+ SPD_MID_GET_TRX_5,
+ SPD_MID_GET_TRX_6,
+ SPD_MID_GET_TRX_7,
+ SPD_MID_GET_TRX_8,
+ SPD_MID_GET_TRX_9,
+ SPD_MID_HANDLERSOCKET_HANDLER_INIT_1,
+ SPD_MID_HANDLERSOCKET_HANDLER_INIT_2,
+ SPD_MID_HANDLERSOCKET_HANDLER_SPIDER_HANDLERSOCKET_HANDLER_1,
+ SPD_MID_HANDLERSOCKET_SHARE_CREATE_COLUMN_NAME_STR_1,
+ SPD_MID_HANDLERSOCKET_SHARE_CREATE_TABLE_NAMES_STR_1,
+ SPD_MID_HANDLERSOCKET_SHARE_CREATE_TABLE_NAMES_STR_2,
+ SPD_MID_HANDLERSOCKET_SHARE_CREATE_TABLE_NAMES_STR_3,
+ SPD_MID_HANDLERSOCKET_SHARE_INIT_1,
+ SPD_MID_HANDLERSOCKET_SHARE_SPIDER_HANDLERSOCKET_SHARE_1,
+ SPD_MID_HA_SPIDER_COND_PUSH_1,
+ SPD_MID_HA_SPIDER_CREATE_1,
+ SPD_MID_HA_SPIDER_CREATE_2,
+ SPD_MID_HA_SPIDER_CREATE_BULK_ACCESS_LINK_1,
+ SPD_MID_HA_SPIDER_FT_INIT_EXT_1,
+ SPD_MID_HA_SPIDER_HA_SPIDER_1,
+ SPD_MID_HA_SPIDER_HA_SPIDER_2,
+ SPD_MID_HA_SPIDER_INFO_PUSH_1,
+ SPD_MID_HA_SPIDER_MULTI_RANGE_READ_NEXT_FIRST_1,
+ SPD_MID_HA_SPIDER_MULTI_RANGE_READ_NEXT_FIRST_2,
+ SPD_MID_HA_SPIDER_MULTI_RANGE_READ_NEXT_FIRST_3,
+ SPD_MID_HA_SPIDER_OPEN_1,
+ SPD_MID_HA_SPIDER_OPEN_2,
+ SPD_MID_HA_SPIDER_OPEN_3,
+ SPD_MID_HA_SPIDER_OPEN_4,
+ SPD_MID_HA_SPIDER_OPEN_5,
+ SPD_MID_HA_SPIDER_OPEN_6,
+ SPD_MID_HA_SPIDER_OPEN_7,
+ SPD_MID_INCREASE_LONGLONG_LIST_1,
+ SPD_MID_INCREASE_LONG_LIST_1,
+ SPD_MID_INCREASE_NULL_STRING_LIST_1,
+ SPD_MID_INCREASE_STRING_LIST_1,
+ SPD_MID_MBASE_COPY_TABLE_INIT_1,
+ SPD_MID_MBASE_HANDLER_APPEND_KEY_COLUMN_TYPES_1,
+ SPD_MID_MBASE_HANDLER_APPEND_MATCH_AGAINST_1,
+ SPD_MID_MBASE_HANDLER_APPEND_TMP_TABLE_AND_SQL_FOR_BKA_1,
+ SPD_MID_MBASE_HANDLER_APPEND_UNION_TABLE_AND_SQL_FOR_BKA_1,
+ SPD_MID_MBASE_HANDLER_INIT_1,
+ SPD_MID_MBASE_HANDLER_INIT_2,
+ SPD_MID_MBASE_HANDLER_INIT_3,
+ SPD_MID_MBASE_HANDLER_INIT_4,
+ SPD_MID_MBASE_HANDLER_INIT_5,
+ SPD_MID_MBASE_HANDLER_INIT_6,
+ SPD_MID_MBASE_HANDLER_INIT_7,
+ SPD_MID_MBASE_HANDLER_INIT_8,
+ SPD_MID_MBASE_HANDLER_INIT_9,
+ SPD_MID_MBASE_HANDLER_INIT_UNION_TABLE_NAME_POS_1,
+ SPD_MID_MBASE_HANDLER_SET_SQL_FOR_EXEC_1,
+ SPD_MID_MBASE_HANDLER_SET_UNION_TABLE_NAME_POS_1,
+ SPD_MID_MBASE_HANDLER_SPIDER_MBASE_HANDLER_1,
+ SPD_MID_MBASE_SHARE_APPEND_SHOW_INDEX_1,
+ SPD_MID_MBASE_SHARE_APPEND_SHOW_INDEX_2,
+ SPD_MID_MBASE_SHARE_APPEND_SHOW_RECORDS_1,
+ SPD_MID_MBASE_SHARE_APPEND_SHOW_TABLE_STATUS_1,
+ SPD_MID_MBASE_SHARE_APPEND_SHOW_TABLE_STATUS_2,
+ SPD_MID_MBASE_SHARE_CREATE_COLUMN_NAME_STR_1,
+ SPD_MID_MBASE_SHARE_CREATE_TABLE_NAMES_STR_1,
+ SPD_MID_MBASE_SHARE_CREATE_TABLE_NAMES_STR_2,
+ SPD_MID_MBASE_SHARE_CREATE_TABLE_NAMES_STR_3,
+ SPD_MID_MBASE_SHARE_DISCOVER_TABLE_STRUCTURE_1,
+ SPD_MID_MBASE_SHARE_INIT_1,
+ SPD_MID_MBASE_SHARE_INIT_2,
+ SPD_MID_MBASE_SHARE_INIT_3,
+ SPD_MID_MBASE_SHARE_INIT_4,
+ SPD_MID_MBASE_SHARE_SPIDER_MBASE_SHARE_1,
+ SPD_MID_OPEN_ALL_TABLES_1,
+ SPD_MID_OPEN_SYS_TABLE_1,
+ SPD_MID_ORACLE_COPY_TABLE_COPY_ROWS_1,
+ SPD_MID_ORACLE_COPY_TABLE_COPY_ROWS_2,
+ SPD_MID_ORACLE_COPY_TABLE_COPY_ROWS_3,
+ SPD_MID_ORACLE_COPY_TABLE_COPY_ROWS_4,
+ SPD_MID_ORACLE_COPY_TABLE_INIT_1,
+ SPD_MID_ORACLE_COPY_TABLE_INIT_2,
+ SPD_MID_ORACLE_HANDLER_APPEND_KEY_COLUMN_TYPES_1,
+ SPD_MID_ORACLE_HANDLER_APPEND_MATCH_AGAINST_1,
+ SPD_MID_ORACLE_HANDLER_APPEND_TMP_TABLE_AND_SQL_FOR_BKA_1,
+ SPD_MID_ORACLE_HANDLER_APPEND_UNION_TABLE_AND_SQL_FOR_BKA_1,
+ SPD_MID_ORACLE_HANDLER_INIT_1,
+ SPD_MID_ORACLE_HANDLER_INIT_2,
+ SPD_MID_ORACLE_HANDLER_INIT_3,
+ SPD_MID_ORACLE_HANDLER_INIT_4,
+ SPD_MID_ORACLE_HANDLER_INIT_5,
+ SPD_MID_ORACLE_HANDLER_INIT_6,
+ SPD_MID_ORACLE_HANDLER_INIT_7,
+ SPD_MID_ORACLE_HANDLER_INIT_8,
+ SPD_MID_ORACLE_HANDLER_INIT_9,
+ SPD_MID_ORACLE_HANDLER_INIT_UNION_TABLE_NAME_POS_1,
+ SPD_MID_ORACLE_HANDLER_SET_SQL_FOR_EXEC_1,
+ SPD_MID_ORACLE_HANDLER_SET_UNION_TABLE_NAME_POS_1,
+ SPD_MID_ORACLE_HANDLER_SPIDER_ORACLE_HANDLER_1,
+ SPD_MID_ORACLE_SHARE_APPEND_SHOW_AUTOINC_1,
+ SPD_MID_ORACLE_SHARE_APPEND_SHOW_INDEX_1,
+ SPD_MID_ORACLE_SHARE_APPEND_SHOW_INDEX_2,
+ SPD_MID_ORACLE_SHARE_APPEND_SHOW_LAST_INSERT_ID_1,
+ SPD_MID_ORACLE_SHARE_APPEND_SHOW_LAST_INSERT_ID_2,
+ SPD_MID_ORACLE_SHARE_APPEND_SHOW_RECORDS_1,
+ SPD_MID_ORACLE_SHARE_APPEND_SHOW_TABLE_STATUS_1,
+ SPD_MID_ORACLE_SHARE_APPEND_SHOW_TABLE_STATUS_2,
+ SPD_MID_ORACLE_SHARE_CREATE_COLUMN_NAME_STR_1,
+ SPD_MID_ORACLE_SHARE_CREATE_TABLE_NAMES_STR_1,
+ SPD_MID_ORACLE_SHARE_CREATE_TABLE_NAMES_STR_2,
+ SPD_MID_ORACLE_SHARE_CREATE_TABLE_NAMES_STR_3,
+ SPD_MID_ORACLE_SHARE_INIT_1,
+ SPD_MID_ORACLE_SHARE_INIT_2,
+ SPD_MID_ORACLE_SHARE_INIT_3,
+ SPD_MID_ORACLE_SHARE_INIT_4,
+ SPD_MID_ORACLE_SHARE_SPIDER_ORACLE_SHARE_1,
+ SPD_MID_PARSE_CONNECT_INFO_1,
+ SPD_MID_PING_TABLE_BODY_1,
+ SPD_MID_PING_TABLE_BODY_2,
+ SPD_MID_PING_TABLE_INIT_BODY_1,
+ SPD_MID_PING_TABLE_MON_FROM_TABLE_1,
+ SPD_MID_RELEASE_PING_TABLE_MON_LIST_1,
+ SPD_MID_TRX_ANOTHER_LOCK_TABLES_1,
+ SPD_MID_UDF_COPY_TABLES_CREATE_TABLE_LIST_1,
+ SPD_MID_UDF_DIRECT_SQL_CREATE_CONN_1,
+ SPD_MID_UDF_DIRECT_SQL_CREATE_CONN_2,
+ SPD_MID_UDF_DIRECT_SQL_CREATE_CONN_3,
+ SPD_MID_UDF_DIRECT_SQL_CREATE_CONN_4,
+ SPD_MID_UDF_DIRECT_SQL_CREATE_CONN_KEY_1,
+ SPD_MID_UDF_DIRECT_SQL_CREATE_TABLE_LIST_1,
+ SPD_MID_UDF_DIRECT_SQL_CREATE_TABLE_LIST_2,
+ SPD_MID_UDF_GET_COPY_TGT_TABLES_1
+};
+
#define SPIDER_BACKUP_DASTATUS \
bool da_status; if (thd) da_status = thd->is_error(); else da_status = FALSE;
#define SPIDER_RESTORE_DASTATUS \
@@ -518,7 +791,6 @@ typedef struct st_spider_conn
SPIDER_CONN_LOOP_CHECK *loop_check_ignored_first;
SPIDER_CONN_LOOP_CHECK *loop_check_ignored_last;
SPIDER_CONN_LOOP_CHECK *loop_check_meraged_first;
- SPIDER_CONN_LOOP_CHECK *loop_check_meraged_last;
} SPIDER_CONN;
typedef struct st_spider_lgtm_tblhnd_share
@@ -934,6 +1206,7 @@ typedef struct st_spider_share
uint *tgt_pk_names_lengths;
uint *tgt_sequence_names_lengths;
uint *conn_keys_lengths;
+ /* The index in `spider_dbton' of each data node link. */
uint *sql_dbton_ids;
uint server_names_charlen;
@@ -1003,10 +1276,16 @@ typedef struct st_spider_share
uchar dbton_bitmap[spider_bitmap_size(SPIDER_DBTON_SIZE)];
spider_db_share *dbton_share[SPIDER_DBTON_SIZE];
uint use_dbton_count;
+ /* Actual size is `use_dbton_count'. Values are the indices of item
+ in `spider_dbton'. */
uint use_dbton_ids[SPIDER_DBTON_SIZE];
+ /* Inverse map of `use_dbton_ids'. */
uint dbton_id_to_seq[SPIDER_DBTON_SIZE];
uint use_sql_dbton_count;
+ /* Actual size is `use_sql_dbton_count'. Values are the indices of
+ item in `spider_dbton'. */
uint use_sql_dbton_ids[SPIDER_DBTON_SIZE];
+ /* Inverse map of `use_sql_dbton_ids'. */
uint sql_dbton_id_to_seq[SPIDER_DBTON_SIZE];
SPIDER_ALTER_TABLE alter_table;