34 static bool safe_memcpy (
void *data,
void *source,
int size);
67 for (i = 0; i < val_cnt; i++)
102 for (
int i = 0;
i < val_count;
i++)
129 unsigned int hash_val = 0, tmp_hash_val;
136 hash_val = hash_val ^ tmp_hash_val;
139 hash_val = tmp_hash_val;
219 while (regu_list !=
NULL)
228 regu_list = regu_list->
next;
249 int hash_list_scan_yn = args ? *((
int *) args) : 0;
260 fprintf (fp,
"LIST_CACHE_ENTRY (%p) {\n", data);
268 fprintf (fp,
"pageid = [%d] volid = [%d] offset = [%d]\n", data2->
pos->
vpid.
pageid,
308 if (vtype1 != vtype2)
337 probe_regu_list = probe_regu_list->
next;
370 if (vtype1 != vtype2)
390 probe_regu_list = probe_regu_list->
next;
472 memcpy (data, source, (
size_t) size);
unsigned int qdata_hash_scan_key(const void *key, unsigned int ht_size)
HASH_SCAN_VALUE * qdata_alloc_hscan_value(cubthread::entry *thread_p, QFILE_TUPLE tpl)
TP_DOMAIN_STATUS tp_value_coerce(const DB_VALUE *src, DB_VALUE *dest, const TP_DOMAIN *desired_domain)
DB_TYPE REGU_VARIABLE_GET_TYPE(const regu_variable_node *regu)
#define ER_TP_CANT_COERCE
HASH_SCAN_KEY * qdata_alloc_hscan_key(cubthread::entry *thread_p, int val_cnt, bool alloc_vals)
DB_VALUE_COMPARE_RESULT tp_value_compare(const DB_VALUE *value1, const DB_VALUE *value2, int allow_coercion, int total_order)
DB_VALUE * pr_make_value(void)
void qdata_free_hscan_value(cubthread::entry *thread_p, HASH_SCAN_VALUE *value)
HASH_SCAN_KEY * qdata_copy_hscan_key_without_alloc(cubthread::entry *thread_p, HASH_SCAN_KEY *key, REGU_VARIABLE_LIST probe_regu_list, HASH_SCAN_KEY *new_key)
HASH_SCAN_VALUE * qdata_alloc_hscan_value_OID(cubthread::entry *thread_p, QFILE_LIST_SCAN_ID *scan_id_p)
QFILE_TUPLE_SIMPLE_POS * pos
static bool safe_memcpy(void *data, void *source, int size)
void qdata_free_hscan_key(cubthread::entry *thread_p, HASH_SCAN_KEY *key, int val_count)
HASH_SCAN_KEY * qdata_copy_hscan_key(cubthread::entry *thread_p, HASH_SCAN_KEY *key, REGU_VARIABLE_LIST probe_regu_list, val_descr *vd)
int qdata_free_hscan_entry(const void *key, void *data, void *args)
enum tp_domain_status TP_DOMAIN_STATUS
int pr_free_value(DB_VALUE *value)
void er_set(int severity, const char *file_name, const int line_no, int err_id, int num_args,...)
int qdata_print_hash_scan_entry(THREAD_ENTRY *thread_p, FILE *fp, const void *data, void *args)
#define ER_OUT_OF_VIRTUAL_MEMORY
int fetch_peek_dbval(THREAD_ENTRY *thread_p, REGU_VARIABLE *regu_var, val_descr *vd, OID *class_oid, OID *obj_oid, QFILE_TUPLE tpl, DB_VALUE **peek_dbval)
#define DB_VALUE_DOMAIN_TYPE(value)
DB_VALUE * pr_copy_value(DB_VALUE *value)
#define QFILE_GET_TUPLE_LENGTH(tpl)
const char * pr_type_name(DB_TYPE id)
#define db_private_free_and_init(thrd, ptr)
#define db_private_free(thrd, ptr)
#define db_private_alloc(thrd, size)
int pr_clear_value(DB_VALUE *value)
static DB_VALUE_COMPARE_RESULT qdata_hscan_key_compare(HASH_SCAN_KEY *ckey1, HASH_SCAN_KEY *ckey2, int *diff_pos)
unsigned int mht_get_hash_number(const int ht_size, const DB_VALUE *val)
int pr_clone_value(const DB_VALUE *src, DB_VALUE *dest)
int qdata_hscan_key_eq(const void *key1, const void *key2)
int qdata_build_hscan_key(THREAD_ENTRY *thread_p, val_descr *vd, REGU_VARIABLE_LIST regu_list, HASH_SCAN_KEY *key)