48 #define BYTE_SIZE OR_INT_SIZE 49 #define LONG_SIZE OR_INT_SIZE 50 #define PTR_SIZE OR_INT_SIZE 51 #define pack_char or_pack_int 52 #define pack_long or_pack_int 111 template <
typename T>
114 template <
typename T>
115 static void xts_debug_check (
const T &t,
char *pack_start,
const char *pack_end);
116 template <
typename T>
275 int header_size, body_size;
279 if (!xasl_tree || !stream)
287 header_size =
sizeof (int)
294 offset =
sizeof (int)
305 if (offset > org_offset)
375 int header_size, body_size;
378 if (!pred || !pred_stream || !pred_stream_size)
386 offset =
sizeof (int)
438 int header_size, body_size;
442 if (!xasl_tree || !xasl_stream || !xasl_stream_size)
452 offset =
sizeof (int)
499 bool is_buf_alloced =
false;
501 if (aggregate ==
NULL)
530 buf_p = (
char *) malloc (size);
537 is_buf_alloced =
true;
546 assert (buf <= buf_p + size);
567 bool is_buf_alloced =
false;
569 if (
function ==
NULL)
598 buf_p = (
char *) malloc (size);
605 is_buf_alloced =
true;
614 assert (buf <= buf_p + size);
635 bool is_buf_alloced =
false;
637 if (analytic ==
NULL)
666 buf_p = (
char *) malloc (size);
673 is_buf_alloced =
true;
701 bool is_buf_alloced =
false;
703 if (analytic_eval ==
NULL)
732 buf_p = (
char *) malloc (size);
739 is_buf_alloced =
true;
767 bool is_buf_alloced =
false;
769 if (sort_list_id ==
NULL)
798 buf_p = (
char *) malloc (size);
805 is_buf_alloced =
true;
814 assert (buf <= buf_p + size);
835 bool is_buf_alloced =
false;
866 buf_p = (
char *) malloc (size);
873 is_buf_alloced =
true;
882 assert (buf <= buf_p + size);
903 bool is_buf_alloced =
false;
905 if (arithmetic ==
NULL)
934 buf_p = (
char *) malloc (size);
941 is_buf_alloced =
true;
950 assert (buf <= buf_p + size);
971 bool is_buf_alloced =
false;
973 if (indx_info ==
NULL)
1002 buf_p = (
char *) malloc (size);
1009 is_buf_alloced =
true;
1018 assert (buf <= buf_p + size);
1039 bool is_buf_alloced =
false;
1041 if (outptr_list ==
NULL)
1070 buf_p = (
char *) malloc (size);
1077 is_buf_alloced =
true;
1086 assert (buf <= buf_p + size);
1107 bool is_buf_alloced =
false;
1109 if (selupd_list ==
NULL)
1138 buf_p = (
char *) malloc (size);
1145 is_buf_alloced =
true;
1154 assert (buf <= buf_p + size);
1175 bool is_buf_alloced =
false;
1177 if (pred_expr ==
NULL)
1206 buf_p = (
char *) malloc (size);
1213 is_buf_alloced =
true;
1222 assert (buf <= buf_p + size);
1243 bool is_buf_alloced =
false;
1245 if (regu_var ==
NULL)
1274 buf_p = (
char *) malloc (size);
1281 is_buf_alloced =
true;
1290 assert (buf <= buf_p + size);
1296 #if !defined(NDEBUG) 1302 memset (buf, 0, margin);
1327 bool is_buf_alloced =
false;
1329 if (sort_list ==
NULL)
1358 buf_p = (
char *) malloc (size);
1365 is_buf_alloced =
true;
1374 assert (buf <= buf_p + size);
1395 bool is_buf_alloced =
false;
1397 if (val_list ==
NULL)
1426 buf_p = (
char *) malloc (size);
1433 is_buf_alloced =
true;
1442 assert (buf <= buf_p + size);
1463 bool is_buf_alloced =
false;
1494 buf_p = (
char *) malloc (size);
1501 is_buf_alloced =
true;
1510 assert (buf <= buf_p + size);
1531 bool is_buf_alloced =
false;
1562 buf_p = (
char *) malloc (size);
1569 is_buf_alloced =
true;
1579 assert (buf <= buf_p + size);
1585 #if !defined(NDEBUG) 1591 memset (buf, 0, margin);
1616 bool is_buf_alloced =
false;
1647 buf_p = (
char *) malloc (size);
1654 is_buf_alloced =
true;
1663 assert (buf <= buf_p + size);
1684 bool is_buf_alloced =
false;
1686 if (func_pred ==
NULL)
1715 buf_p = (
char *) malloc (size);
1722 is_buf_alloced =
true;
1731 assert (buf <= buf_p + size);
1752 bool is_buf_alloced =
false;
1754 if (attrinfo ==
NULL)
1783 buf_p = (
char *) malloc (size);
1790 is_buf_alloced =
true;
1799 assert (buf <= buf_p + size);
1826 bool is_buf_alloced =
false;
1828 if (mergelist_proc ==
NULL)
1839 size = xts_sizeof_merge_list_info (mergelist_proc);
1857 buf_p = (
char *) malloc (size);
1864 is_buf_alloced =
true;
1867 if (xts_process_merge_list_info (buf_p, mergelist_proc) ==
NULL)
1892 bool is_buf_alloced =
false;
1894 if (list_merge_info ==
NULL)
1923 buf_p = (
char *) malloc (size);
1930 is_buf_alloced =
true;
1958 bool is_buf_alloced =
false;
1960 if (update_proc ==
NULL)
1971 size = xts_sizeof_update_info (update_proc);
1989 buf_p = (
char *) malloc (size);
1996 is_buf_alloced =
true;
1999 if (xts_process_update_info (buf_p, update_proc) ==
NULL)
2024 bool is_buf_alloced =
false;
2026 if (delete_proc ==
NULL)
2037 size = xts_sizeof_delete_info (delete_proc);
2055 buf_p = (
char *) malloc (size);
2062 is_buf_alloced =
true;
2065 if (xts_process_delete_info (buf_p, delete_proc) ==
NULL)
2090 bool is_buf_alloced =
false;
2092 if (insert_proc ==
NULL)
2121 buf_p = (
char *) malloc (size);
2128 is_buf_alloced =
true;
2131 if (xts_process_insert_info (buf_p, insert_proc) ==
NULL)
2157 bool is_buf_alloced =
false;
2159 if (method_sig_list ==
NULL)
2188 buf_p = (
char *) malloc (size);
2195 is_buf_alloced =
true;
2204 assert (buf <= buf_p + size);
2225 bool is_buf_alloced =
false;
2227 if (method_sig ==
NULL)
2259 buf_p = (
char *) malloc (size);
2266 is_buf_alloced =
true;
2275 assert (buf <= buf_p + size);
2292 int packed_length, length;
2315 #if defined(ENABLE_UNUSED_FUNCTION) 2317 xts_save_string_with_length (
const char *
string,
int length)
2339 xts_save_input_vals (
const char *input_vals_p,
int length)
2368 if (db_value_array_p ==
NULL)
2373 offset_array = (
int *) malloc (
sizeof (
int) * nelements);
2374 if (offset_array ==
NULL)
2379 for (i = 0; i < nelements; i++)
2397 #if defined (ENABLE_UNUSED_FUNCTION) 2399 xts_save_domain_array (
TP_DOMAIN ** domain_array_p,
int nelements)
2404 if (domain_array_p ==
NULL)
2409 for (len = 0, i = 0; i < nelements; i++)
2421 for (i = 0; i < nelements; i++)
2436 if (int_array ==
NULL)
2448 for (i = 0; i < nelements; ++
i)
2462 if (hfid_array ==
NULL)
2474 for (i = 0; i < nelements; ++
i)
2488 if (oid_array ==
NULL)
2500 for (i = 0; i < nelements; ++
i)
2512 #define OFFSET_BUFFER_SIZE 32 2518 int *regu_var_offset_table;
2523 if (regu_var_list ==
NULL)
2535 for (regu_var_p = regu_var_list; regu_var_p; regu_var_p = regu_var_p->
next)
2542 regu_var_offset_table = (
int *) malloc (
sizeof (
int) * (nelements + 1));
2543 if (regu_var_offset_table ==
NULL)
2550 regu_var_offset_table = offset_local_buffer;
2554 regu_var_offset_table[i++] = nelements;
2555 for (regu_var_p = regu_var_list; regu_var_p; ++
i, regu_var_p = regu_var_p->
next)
2558 if (regu_var_offset_table[i] ==
ER_FAILED)
2560 if (regu_var_offset_table != offset_local_buffer)
2570 if (regu_var_offset_table != offset_local_buffer)
2587 int *regu_var_list_offset_table;
2592 if (regu_var_list_list ==
NULL)
2604 for (regu_var_list_p = regu_var_list_list; regu_var_list_p; regu_var_list_p = regu_var_list_p->
next)
2611 regu_var_list_offset_table = (
int *) malloc (
sizeof (
int) * (nelements + 1));
2612 if (regu_var_list_offset_table ==
NULL)
2619 regu_var_list_offset_table = offset_local_buffer;
2623 regu_var_list_offset_table[i++] = nelements;
2624 for (regu_var_list_p = regu_var_list_list; regu_var_list_p; ++
i, regu_var_list_p = regu_var_list_p->
next)
2627 if (regu_var_list_offset_table[i] ==
ER_FAILED)
2629 if (regu_var_list_offset_table != offset_local_buffer)
2639 if (regu_var_list_offset_table != offset_local_buffer)
2656 int *key_range_offset_table;
2658 if (key_range_array ==
NULL)
2669 key_range_offset_table = (
int *) malloc (
sizeof (
int) * 3 * nelements);
2670 if (key_range_offset_table ==
NULL)
2675 for (i = 0, j = 0; i < nelements; i++, j++)
2677 key_range_offset_table[j] = key_range_array[
i].
range;
2679 if (key_range_array[i].key1)
2682 if (key_range_offset_table[j] ==
ER_FAILED)
2690 key_range_offset_table[++j] = 0;
2693 if (key_range_array[i].key2)
2696 if (key_range_offset_table[j] ==
ER_FAILED)
2704 key_range_offset_table[++j] = 0;
2841 for (cnt = 0, access_spec = xasl->
spec_list; access_spec; access_spec = access_spec->
next, cnt++)
2845 for (access_spec = xasl->
spec_list; access_spec; access_spec = access_spec->
next)
2850 for (cnt = 0, access_spec = xasl->
merge_spec; access_spec; access_spec = access_spec->
next, cnt++)
2854 for (access_spec = xasl->
merge_spec; access_spec; access_spec = access_spec->
next)
2994 for (cnt = 0, access_spec = xasl->
curr_spec; access_spec; access_spec = access_spec->
next, cnt++)
2998 for (access_spec = xasl->
curr_spec; access_spec; access_spec = access_spec->
next)
3448 for (cnt = 0, access_spec = merge_list_info->
outer_spec_list; access_spec; access_spec = access_spec->
next, cnt++)
3452 for (access_spec = merge_list_info->
outer_spec_list; access_spec; access_spec = access_spec->
next)
3471 for (cnt = 0, access_spec = merge_list_info->
inner_spec_list; access_spec; access_spec = access_spec->
next, cnt++)
3475 for (access_spec = merge_list_info->
inner_spec_list; access_spec; access_spec = access_spec->
next)
3676 ptr = buf = (
char *) malloc (size);
3683 for (idx = 0; idx < nelements; idx++)
3764 ptr = buf = (
char *) malloc (size);
3771 for (idx = 0; idx < nelements; idx++)
3794 int offset, return_offset;
3798 if (odku_info ==
NULL)
3811 ptr = buf = (
char *) malloc (size);
3868 offset = return_offset;
4120 switch (pred_expr->
type)
4387 switch (access_spec->
type)
4490 #if !defined(NDEBUG) 4786 char *start_ptr =
ptr;
4846 char *start_ptr =
ptr;
4883 char *start_ptr =
ptr;
4949 for (i = 0, p = val_list->
valp; i < val_list->val_cnt; i++, p = p->
next)
5003 switch (regu_var->type)
5472 #if !defined(NDEBUG) 5646 for (regu_value_item = regu_value_list->
regu_list; regu_value_item; regu_value_item = regu_value_item->
next)
5648 type = regu_value_item->
value->type;
5723 for (access_spec = xasl->
spec_list; access_spec; access_spec = access_spec->
next)
5729 for (access_spec = xasl->
merge_spec; access_spec; access_spec = access_spec->
next)
5735 for (access_spec = xasl->
curr_spec; access_spec; access_spec = access_spec->
next)
6036 for (access_spec = merge_list_info->
outer_spec_list; access_spec; access_spec = access_spec->
next)
6042 for (access_spec = merge_list_info->
inner_spec_list; access_spec; access_spec = access_spec->
next)
6243 switch (pred_expr->
type)
6477 switch (access_spec->
type)
6835 for (p = val_list->
valp; p; p = p->
next)
6854 if (regu_var ==
NULL)
6888 switch (regu_var->type)
6998 int case_pred_size = 0;
7268 assert (regu_value_list);
7270 size = tmp_size = 0;
7273 for (regu_value_item = regu_value_list->
regu_list; regu_value_item; regu_value_item = regu_value_item->
next)
7296 int size = 0, tmp_size = 0;
7305 regu_var = regu_var->
next;
7346 xts_Ptr_blocks[block_no] =
7356 xts_Ptr_blocks[block_no][new_lwm].
ptr =
ptr;
7387 for (element_no = 0; element_no <
xts_Ptr_lwm[block_no]; element_no++)
7389 if (ptr == xts_Ptr_blocks[block_no][element_no].ptr)
7391 return xts_Ptr_blocks[block_no][element_no].
offset;
7429 int org_size = size;
7466 #if !defined(NDEBUG) 7468 if (size > org_size)
7514 template <
typename T>
7540 template <
typename T>
7544 #if !defined (NDEBUG) 7561 std::size_t buf_size = pack_end - pack_start;
7563 assert (buf_size <= estimate_size);
7568 if (unpack_end != pack_end)
7588 template <
typename T>
QPROC_SINGLE_FETCH single_fetch
regu_variable_node * key1
int * mvcc_extra_assign_reev
static char * xts_save_update_assignment(char *ptr, const UPDATE_ASSIGNMENT *assign)
OUTPTR_LIST * outptr_list
int stx_init_xasl_unpack_info(THREAD_ENTRY *thread_p, char *xasl_stream, int xasl_stream_size)
REGU_VARIABLE_LIST prior_regu_list_pred
int num_extra_assign_reev
#define OR_BTID_ALIGNED_SIZE
REGU_VALUE_ITEM * regu_list
static int xts_sizeof_connectby_proc(const CONNECTBY_PROC_NODE *ptr)
static int xts_sizeof_analytic_eval_type(const ANALYTIC_EVAL_TYPE *ptr)
char * or_pack_btid(char *buf, const BTID *btid)
static char * xts_pack_regu_variable_value(char *ptr, const REGU_VARIABLE *regu_var)
static int xts_sizeof_method_spec_type(const METHOD_SPEC_TYPE *ptr)
aggregate_specific_function_info info
static int xts_sizeof_outptr_list(const OUTPTR_LIST *ptr)
static char * xts_process_method_spec_type(char *ptr, const METHOD_SPEC_TYPE *method_spec)
static int xts_save_db_value_array(DB_VALUE **ptr, int size)
static int xts_sizeof_alsm_eval_term(const ALSM_EVAL_TERM *ptr)
VAL_LIST * prior_val_list
HEAP_CACHE_ATTRINFO * cache_pred
static int xts_sizeof_odku_info(const ODKU_INFO *odku_info)
DB_VALUE * save_instnum_val
ACCESS_SPEC_TYPE * merge_spec
static char * xts_process_update_proc(char *ptr, const UPDATE_PROC_NODE *update_info)
static int xts_sizeof_merge_proc(const MERGE_PROC_NODE *ptr)
regu_variable_node * key_limit_u
QFILE_TUPLE_VALUE_TYPE_LIST type_list
REGU_VARIABLE_LIST cls_regu_list_key
static char * xts_process_insert_proc(char *ptr, const INSERT_PROC_NODE *insert_proc)
struct db_value * m_default_value
OUTPTR_LIST * a_outptr_list_interm
static int xts_sizeof_showstmt_spec_type(const SHOWSTMT_SPEC_TYPE *ptr)
static char * xts_process_outptr_list(char *ptr, const OUTPTR_LIST *outptr_list)
static char * xts_process_rlike_eval_term(char *ptr, const RLIKE_EVAL_TERM *rlike_eval_term)
regu_variable_node * m_json_reguvar
int or_listid_length(void *listid)
BUILDVALUE_PROC_NODE buildvalue
static void xts_debug_check(const T &t, char *pack_start, const char *pack_end)
static char * xts_process_union_proc(char *ptr, const UNION_PROC_NODE *union_proc)
analytic_list_node * head
json_table_column_behavior m_on_empty
DB_VALUE ** cache_reserved
db_value * m_output_value_pointer
static int xts_save_method_sig_list(const METHOD_SIG_LIST *ptr)
static char * xts_process_pred(char *ptr, const PRED *pred)
static char * xts_process_merge_proc(char *ptr, const MERGE_PROC_NODE *merge_info)
UPDDEL_CLASS_INFO * classes
REGU_VARIABLE * limit_row_count
static int xts_save_list_id(const QFILE_LIST_ID *list_id)
#define ACCESS_SPEC_SHOWSTMT_SPEC(ptr)
static int xts_sizeof_update_assignment(const UPDATE_ASSIGNMENT *assign)
char * or_pack_db_value(char *buffer, DB_VALUE *var)
union xasl_node::@155 proc
static int xts_sizeof_insert_proc(const INSERT_PROC_NODE *ptr)
static int xts_save(const T &t)
static int xts_save_string(const char *str)
#define ER_QPROC_INVALID_XASLNODE
QFILE_LIST_MERGE_INFO ls_merge
static int xts_sizeof_regu_value_list(const REGU_VALUE_LIST *regu_value_list)
REGU_VARIABLE_LIST set_regu_list
int num_assign_reev_classes
regu_variable_node * elem
regu_variable_node * percentile_reguvar
static int xts_sizeof(const json_table_column &ptr)
#define ACCESS_SPEC_METHOD_SPEC(ptr)
analytic_eval_type * next
PRED_EXPR * g_grbynum_pred
static int xts_Xasl_errcode
static int xts_sizeof_cte_proc(const CTE_PROC_NODE *ptr)
static int xts_sizeof_set_spec_type(const SET_SPEC_TYPE *ptr)
static int xts_save_analytic_type(const ANALYTIC_TYPE *analytic)
#define assert_release(e)
#define OFFSET_BUFFER_SIZE
XASL_UNPACK_INFO * get_xasl_unpack_info_ptr(THREAD_ENTRY *thread_p)
static int xts_sizeof_selupd_list(const SELUPD_LIST *ptr)
static int xts_save_xasl_node(const XASL_NODE *ptr)
static int xts_sizeof_aggregate_type(const AGGREGATE_TYPE *ptr)
static int xts_get_regu_variable_value_size(const REGU_VARIABLE *ptr)
REGU_VARLIST_LIST select_list
REGU_VARIABLE * orderby_limit
static int xts_save_key_range_array(const KEY_RANGE *ptr, int size)
#define OR_ALIGNED_BUF(size)
static int xts_sizeof_mergelist_proc(const MERGELIST_PROC_NODE *ptr)
ANALYTIC_EVAL_TYPE * a_eval_list
VALPTR_LIST ** valptr_lists
column * m_output_columns
static int xts_save_cache_attrinfo(const HEAP_CACHE_ATTRINFO *ptr)
const size_t STREAM_EXPANSION_UNIT
bool REGU_VARIABLE_IS_FLAGED(const regu_variable_node *regu, int flag)
aggregate_accumulator accumulator
#define ACCESS_SPEC_LIST_SPEC(ptr)
static int xts_save_func_pred(const FUNC_PRED *ptr)
MERGELIST_PROC_NODE mergelist
#define OR_ALIGNED_BUF_SIZE(abuf)
#define OR_PACK_DOMAIN_OBJECT_TO_OID(p, d, o, n)
static int xts_sizeof_list_spec_type(const LIST_SPEC_TYPE *ptr)
char * or_pack_oid(char *ptr, const OID *oid)
UPDDEL_CLASS_INFO * classes
#define PTR_ALIGN(addr, boundary)
BUILDLIST_PROC_NODE buildlist
int or_packed_domain_size(struct tp_domain *domain, int include_classoids)
static int xts_save_srlist_id(const QFILE_SORTED_LIST_ID *sort_list_id)
static int xts_sizeof_cls_spec_type(const CLS_SPEC_TYPE *ptr)
static int xts_sizeof_update_proc(const UPDATE_PROC_NODE *ptr)
regu_variable_node operand
static int xts_sizeof_fetch_proc(const FETCH_PROC_NODE *ptr)
static char * xts_process_buildvalue_proc(char *ptr, const BUILDVALUE_PROC_NODE *build_value_proc)
ACCESS_SPEC_TYPE * inner_spec_list
static int xts_sizeof_upddel_class_info(const UPDDEL_CLASS_INFO *upd_cls)
const int REGU_VARIABLE_FETCH_NOT_CONST
static char * xts_process_regu_value_list(char *ptr, const REGU_VALUE_LIST *regu_value_list)
static int xts_save_selupd_list(const SELUPD_LIST *selupd_list)
static int xts_save_outptr_list(const OUTPTR_LIST *outptr_list)
json_table_column_behavior m_on_error
SELUPD_LIST * selected_upd_list
static char * xts_process_list_id(char *ptr, const QFILE_LIST_ID *list_id)
PRED_EXPR * ordbynum_pred
REGU_VARIABLE_LIST list_regu_list_probe
REGU_VARIABLE_LIST list_regu_list_build
static char * xts_process_indx_info(char *ptr, const INDX_INFO *indx_info)
static int xts_get_offset_visited_ptr(const void *ptr)
static char * xts_process_comp_eval_term(char *ptr, const COMP_EVAL_TERM *comp_eval_term)
int xasl_stream_make_align(int x)
static int xts_save_oid_array(OID *ptr, int size)
static char * xts_process_analytic_eval_type(char *ptr, const ANALYTIC_EVAL_TYPE *analytic)
static char * xts_process_pred_expr(char *ptr, const PRED_EXPR *pred_expr)
static int xts_Ptr_lwm[MAX_PTR_BLOCKS]
static int xts_Free_offset_in_stream
#define OR_ALIGNED_BUF_START(abuf)
const size_t START_PTR_PER_BLOCK
static int xts_sizeof_method_sig_list(const METHOD_SIG_LIST *ptr)
HEAP_CACHE_ATTRINFO * attr_info
static int xts_Ptr_max[MAX_PTR_BLOCKS]
SCAN_OPERATION_TYPE scan_op_type
char * or_pack_double(char *ptr, double number)
HEAP_CACHE_ATTRINFO * cache_rest
XASL_NODE * recursive_part
void er_set(int severity, const char *file_name, const int line_no, int err_id, int num_args,...)
char * or_pack_hfid(const char *ptr, const HFID *hfid)
PRED_EXPR * start_with_pred
cubxasl::pred_expr * pred
analytic_percentile_function_info percentile
static int xts_sizeof_regu_variable(const REGU_VARIABLE *ptr)
static int xts_save_aggregate_type(const AGGREGATE_TYPE *aggregate)
MISC_OPERAND misc_operand
#define ACCESS_SPEC_JSON_TABLE_SPEC(ptr)
ACCESS_SPEC_TYPE * curr_spec
REGU_VARIABLE * func_regu
CONNECTBY_PROC_NODE connect_by
int or_packed_string_length(const char *string, int *strlen)
#define ASSERT_ALIGN(ptr, alignment)
static char * xts_process_method_sig(char *ptr, const METHOD_SIG *method_sig, int size)
REGU_VARIABLE_LIST after_cb_regu_list_rest
static char * xts_process_eval_term(char *ptr, const EVAL_TERM *eval_term)
static char * xts_process_rlist_spec_type(char *ptr, const LIST_SPEC_TYPE *list_spec)
static int xts_save_odku_info(const ODKU_INFO *odku_info)
static char * xts_save_upddel_class_info(char *ptr, const UPDDEL_CLASS_INFO *upd_cls)
#define ER_OUT_OF_VIRTUAL_MEMORY
#define OR_PACK_XASL_NODE_HEADER(PTR, X)
static int xts_sizeof_like_eval_term(const LIKE_EVAL_TERM *ptr)
static char * xts_process_json_table_column_behavior(char *ptr, const json_table_column_behavior *behavior)
REGU_VARIABLE_LIST list_regu_list_pred
#define OR_VALUE_ALIGNED_SIZE(value)
json_table_column_function m_function
HEAP_CACHE_ATTRINFO * cache_range
static int xts_sizeof_sort_list(const SORT_LIST *ptr)
static char * xts_process_ls_merge_info(char *ptr, const QFILE_LIST_MERGE_INFO *qfile_list_merge_info)
union cubxasl::pred_expr::@185 pe
static char * xts_process_mergelist_proc(char *ptr, const MERGELIST_PROC_NODE *merge_list_info)
int or_db_value_size(DB_VALUE *var)
char * stx_build(THREAD_ENTRY *thread_p, char *ptr, regu_variable_node ®uvar)
regu_variable_node * percentile_reguvar
static char * xts_process_set_spec_type(char *ptr, const SET_SPEC_TYPE *set_spec)
UPDATE_ASSIGNMENT * assigns
static char * xts_process_connectby_proc(char *ptr, const CONNECTBY_PROC_NODE *connectby_proc)
static int xts_sizeof_json_table_column_behavior(const json_table_column_behavior *behavior)
static int xts_sizeof_pred(const PRED *ptr)
static int xts_sizeof_rlike_eval_term(const RLIKE_EVAL_TERM *ptr)
REGU_VARIABLE_LIST cls_regu_val_list
#define ACCESS_SPEC_CLS_SPEC(ptr)
REGU_VARIABLE_LIST method_regu_list
REGU_VARIABLE * level_regu
static int xts_save_filter_pred_node(const PRED_EXPR_WITH_CONTEXT *pred)
ARITH_TYPE * outarith_list
static char * xts_process_xasl_node(char *ptr, const XASL_NODE *xasl)
REGU_VARIABLE_LIST a_regu_list
static char * xts_process_cache_attrinfo(char *ptr)
static int xts_sizeof_method_sig(const METHOD_SIG *ptr)
static int xts_save_pred_expr(const PRED_EXPR *ptr)
REGU_VARIABLE * iscycle_regu
PRED_EXPR * after_connect_by_pred
static char * xts_process_analytic_type(char *ptr, const ANALYTIC_TYPE *analytic)
static char * xts_process_srlist_id(char *ptr, const QFILE_SORTED_LIST_ID *sort_list_id)
static int xts_sizeof_key_info(const KEY_INFO *ptr)
static int xts_sizeof_list_id(const QFILE_LIST_ID *ptr)
XASL_NODE * connect_by_ptr
#define OR_DOUBLE_ALIGNED_SIZE
REGU_VARIABLE_LIST regu_list_rest
ACCESS_SCHEMA_TYPE schema_type
static char * xts_process_attr_descr(char *ptr, const ATTR_DESCR *attr_descr)
REGU_VARIABLE_LIST regu_list_pred
OUTPTR_LIST * a_outptr_list_ex
static char * xts_Stream_buffer
static int xts_sizeof_eval_term(const EVAL_TERM *ptr)
REGU_VARIABLE_LIST after_cb_regu_list_pred
static int xts_save_val_list(const VAL_LIST *ptr)
QFILE_TUPLE_VALUE_POSITION pos_descr
static void xts_debug_clear(T &t)
static char * xts_process_delete_proc(char *ptr, const DELETE_PROC_NODE *delete_proc)
int * ls_outer_inner_list
aggregate_list_node * next
static int xts_sizeof_arith_type(const ARITH_TYPE *ptr)
#define db_private_free_and_init(thrd, ptr)
static int xts_sizeof_srlist_id(const QFILE_SORTED_LIST_ID *ptr)
REGU_VARIABLE_LIST list_regu_list_rest
char * or_unpack_int(char *ptr, int *number)
static int xts_sizeof_xasl_node(const XASL_NODE *ptr)
AGGREGATE_TYPE * agg_list
static void xts_free_visited_ptrs(void)
QFILE_LIST_ID * push_list_id
static char * xts_process_regu_variable_list(char *ptr, const REGU_VARIABLE_LIST regu_var_list)
static int xts_sizeof_ls_merge_info(const QFILE_LIST_MERGE_INFO *ptr)
static int xts_sizeof_pos_descr(const QFILE_TUPLE_VALUE_POSITION *ptr)
static int xts_sizeof_cache_attrinfo(const HEAP_CACHE_ATTRINFO *ptr)
int count(int &result, const cub_regex_object ®, const std::string &src, const int position, const INTL_CODESET codeset)
static char * xts_process_function_type(char *ptr, const FUNCTION_TYPE *function)
static XTS_VISITED_PTR * xts_Ptr_blocks[MAX_PTR_BLOCKS]
static int xts_save_upddel_class_info_array(const UPDDEL_CLASS_INFO *classes, int nelements)
static char * xts_process_db_value(char *ptr, const DB_VALUE *value)
static int xts_sizeof_function_type(const FUNCTION_TYPE *ptr)
static int xts_reserve_location_in_stream(int size)
AGGREGATE_TYPE * g_agg_list
static int xts_save_analytic_eval_type(const ANALYTIC_EVAL_TYPE *analytic)
PRED_EXPR * after_join_pred
static int xts_sizeof_val_list(const VAL_LIST *ptr)
static int xts_sizeof_delete_proc(const DELETE_PROC_NODE *ptr)
char * or_pack_int(char *ptr, int number)
#define ACCESS_SPEC_SET_SPEC(ptr)
static char * xts_process_showstmt_spec_type(char *ptr, const SHOWSTMT_SPEC_TYPE *list_spec)
static int xts_sizeof_func_pred(const FUNC_PRED *ptr)
static int xts_save_regu_varlist_list(const REGU_VARLIST_LIST ptr)
analytic_function_info info
static int xts_sizeof_attr_descr(const ATTR_DESCR *ptr)
char * or_pack_listid(char *ptr, void *listid)
static int xts_save_indx_info(const INDX_INFO *indx_info)
VAL_LIST * outer_val_list
static int xts_save_db_value(const DB_VALUE *ptr)
static int xts_save_int_array(int *ptr, int size)
OUTPTR_LIST * prior_outptr_list
int xts_map_func_pred_to_stream(const FUNC_PRED *xasl_tree, char **xasl_stream, int *xasl_stream_size)
static char * xts_process_list_spec_type(char *ptr, const LIST_SPEC_TYPE *list_spec)
static char * xts_process_func_pred(char *ptr, const FUNC_PRED *xasl)
static char * xts_process_filter_pred_node(char *ptr, const PRED_EXPR_WITH_CONTEXT *pred)
static int xts_save_update_assignment_array(const UPDATE_ASSIGNMENT *assigns, int nelements)
OUTPTR_LIST * g_outptr_list
regu_variable_node * elemset
static char * xts_process_pos_descr(char *ptr, const QFILE_TUPLE_VALUE_POSITION *position_descr)
void set_xasl_unpack_info_ptr(THREAD_ENTRY *thread_p, XASL_UNPACK_INFO *ptr)
static char * xts_process_cte_proc(char *ptr, const CTE_PROC_NODE *cte_proc)
#define free_and_init(ptr)
SORT_LIST * after_groupby_list
ACCESS_SPEC_TYPE * spec_list
bool is_user_given_keylimit
enum json_table_column_behavior_type m_behavior
HEAP_CACHE_ATTRINFO * cache_attrinfo
char * or_pack_string_with_length(char *ptr, const char *string, int length)
static char * xts_process_selupd_list(char *ptr, const SELUPD_LIST *selupd_list)
OUTPTR_LIST * a_outptr_list
char * or_pack_domain(char *ptr, struct tp_domain *domain, int include_classoids, int is_null)
int mvcc_reev_extra_cls_cnt
static int xts_sizeof_indx_info(const INDX_INFO *ptr)
QFILE_LIST_ID * input_list_id
REGU_VARIABLE_LIST g_hk_scan_regu_list
static char * xts_process_fetch_proc(char *ptr, const FETCH_PROC_NODE *obj_set_fetch_proc)
static char * xts_process_regu_variable(char *ptr, const REGU_VARIABLE *regu_var)
OUTPTR_LIST * cls_output_val_list
class regu_variable_node REGU_VARIABLE
HEAP_CACHE_ATTRINFO * cache_attrinfo
static char * xts_process_aggregate_type(char *ptr, const AGGREGATE_TYPE *aggregate)
REGU_VARIABLE_LIST g_hk_sort_regu_list
static int xts_save_regu_variable(const REGU_VARIABLE *ptr)
static char * xts_process_cls_spec_type(char *ptr, const CLS_SPEC_TYPE *cls_spec)
UPDATE_ASSIGNMENT * assignments
REGU_VARIABLE_LIST cls_regu_list_pred
static char * xts_process_arith_type(char *ptr, const ARITH_TYPE *arith)
#define XASL_NODE_HEADER_SIZE
static int xts_save_method_sig(const METHOD_SIG *ptr, int size)
int xts_map_xasl_to_stream(const XASL_NODE *xasl_tree, XASL_STREAM *stream)
static char * xts_process_xasl_header(char *ptr, const XASL_NODE_HEADER header)
size_t m_output_columns_size
int xts_map_filter_pred_to_stream(const PRED_EXPR_WITH_CONTEXT *pred, char **pred_stream, int *pred_stream_size)
static int xts_save_hfid_array(HFID *ptr, int size)
const size_t MAX_PTR_BLOCKS
static int xts_mark_ptr_visited(const void *ptr, int offset)
static int xts_sizeof_regu_variable_list(const REGU_VARIABLE_LIST regu_var_list)
static char * xts_process(char *ptr, const json_table_column &json_table_col)
REGU_VARIABLE_LIST cls_regu_list_rest
REGU_VARIABLE_LIST prior_regu_list_rest
static int xts_sizeof_filter_pred_node(const PRED_EXPR_WITH_CONTEXT *ptr)
VAL_LIST * merge_val_list
static int xts_sizeof_union_proc(const UNION_PROC_NODE *ptr)
const int REGU_VARIABLE_FETCH_ALL_CONST
static char * xts_process_val_list(char *ptr, const VAL_LIST *val_list)
REGU_VARIABLE_LIST cls_regu_list_range
static char * xts_process_alsm_eval_term(char *ptr, const ALSM_EVAL_TERM *alsm_eval_term)
analytic_list_node * next
REGU_VARIABLE_LIST arg_list
static int xts_sizeof_pred_expr(const PRED_EXPR *ptr)
REGU_VARIABLE * limit_offset
static int xts_save_sort_list(const SORT_LIST *ptr)
regu_variable_node * pattern
union cubxasl::eval_term::@184 et
QFILE_LIST_ID * start_with_list_id
regu_variable_node * pattern
REGU_VARIABLE_LIST g_regu_list
QPROC_SINGLE_FETCH single_fetch
static char * xts_process_buildlist_proc(char *ptr, const BUILDLIST_PROC_NODE *build_list_proc)
static char * xts_process_method_sig_list(char *ptr, const METHOD_SIG_LIST *method_sig_list)
REGU_VARIABLE_LIST g_scan_regu_list
PRED_EXPR * g_having_pred
ACCESS_SPEC_TYPE * outer_spec_list
aggregate_percentile_info percentile
int xasl_stream_get_ptr_block(const void *ptr)
static int xts_sizeof_access_spec_type(const ACCESS_SPEC_TYPE *ptr)
HEAP_CACHE_ATTRINFO * cache_key
regu_variable_node * esc_char
static char * xts_process_key_info(char *ptr, const KEY_INFO *key_info)
static int xts_sizeof_analytic_type(const ANALYTIC_TYPE *ptr)
VAL_LIST * inner_val_list
static int xts_save_function_type(const FUNCTION_TYPE *function)
METHOD_SIG_LIST * method_sig_list
REGU_VARIABLE_LIST valptrp
static char * xts_process_access_spec_type(char *ptr, const ACCESS_SPEC_TYPE *access_spec)
static char * xts_process_sort_list(char *ptr, const SORT_LIST *sort_list)
SORT_LIST * after_iscan_list
static char * xts_process_like_eval_term(char *ptr, const LIKE_EVAL_TERM *like_eval_term)
static int xts_sizeof_comp_eval_term(const COMP_EVAL_TERM *ptr)
bool xasl_stream_compare(const cubxasl::json_table::column &first, const cubxasl::json_table::column &second)
static int xts_sizeof_buildvalue_proc(const BUILDVALUE_PROC_NODE *ptr)
REGU_VARIABLE * isleaf_regu
static int xts_save_arith_type(const ARITH_TYPE *arithmetic)
static int xts_Stream_size
REGU_VARIABLE_LIST cls_regu_list_reserved
static int xts_sizeof_db_value(const DB_VALUE *ptr)
XASL_NODE * non_recursive_part
static int xts_sizeof_buildlist_proc(const BUILDLIST_PROC_NODE *ptr)
regu_variable_list_node * operands
HEAP_CACHE_ATTRINFO * cache_pred
static int xts_save_regu_variable_list(const REGU_VARIABLE_LIST ptr)
size_t m_nested_nodes_size
regu_variable_node * case_sensitive
regu_variable_node * key_limit_l