CUBRID Engine  latest
query_list.h File Reference
#include "storage_common.h"
#include "object_domain.h"
Include dependency graph for query_list.h:

Go to the source code of this file.

Classes

struct  qfile_tuple_record
 
struct  qfile_tuple_value_header
 
struct  qfile_tuple_value_type_list
 
struct  qfile_tuple_value_position
 
struct  qfile_list_merge_info
 
struct  qfile_tuple_descriptor
 
struct  sort_list
 
struct  qfile_list_id
 
struct  qfile_tuple_position
 
struct  qfile_list_scan_id
 
struct  qfile_sorted_list_id
 
struct  qfile_sort_scan_id
 

Macros

#define IS_OUTER_JOIN_TYPE(t)   ((t) == JOIN_LEFT || (t) == JOIN_RIGHT || (t) == JOIN_OUTER)
 
#define QFILE_PAGE_HEADER_SIZE   32
 
#define QFILE_TUPLE_COUNT_OFFSET   0
 
#define QFILE_PREV_PAGE_ID_OFFSET   4
 
#define QFILE_NEXT_PAGE_ID_OFFSET   8
 
#define QFILE_LAST_TUPLE_OFFSET   12
 
#define QFILE_OVERFLOW_PAGE_ID_OFFSET   16
 
#define QFILE_PREV_VOL_ID_OFFSET   20
 
#define QFILE_NEXT_VOL_ID_OFFSET   22
 
#define QFILE_OVERFLOW_VOL_ID_OFFSET   24
 
#define QFILE_RESERVED_OFFSET   26
 
#define QFILE_NULL_PAGE_OFFSET   -1
 
#define QFILE_GET_TUPLE_COUNT(ptr)   OR_GET_INT ((ptr) + QFILE_TUPLE_COUNT_OFFSET)
 
#define QFILE_GET_PREV_PAGE_ID(ptr)   (PAGEID) OR_GET_INT ((ptr) + QFILE_PREV_PAGE_ID_OFFSET)
 
#define QFILE_GET_NEXT_PAGE_ID(ptr)   (PAGEID) OR_GET_INT ((ptr) + QFILE_NEXT_PAGE_ID_OFFSET)
 
#define QFILE_GET_LAST_TUPLE_OFFSET(ptr)   (PAGEID) OR_GET_INT ((ptr) + QFILE_LAST_TUPLE_OFFSET)
 
#define QFILE_GET_OVERFLOW_PAGE_ID(ptr)   (PAGEID) OR_GET_INT ((ptr) + QFILE_OVERFLOW_PAGE_ID_OFFSET)
 
#define QFILE_GET_PREV_VOLUME_ID(ptr)   (VOLID) OR_GET_SHORT ((ptr) + QFILE_PREV_VOL_ID_OFFSET)
 
#define QFILE_GET_NEXT_VOLUME_ID(ptr)   (VOLID) OR_GET_SHORT ((ptr) + QFILE_NEXT_VOL_ID_OFFSET)
 
#define QFILE_GET_OVERFLOW_VOLUME_ID(ptr)   (VOLID) OR_GET_SHORT ((ptr) + QFILE_OVERFLOW_VOL_ID_OFFSET)
 
#define QFILE_GET_PREV_VPID(des, ptr)
 
#define QFILE_GET_NEXT_VPID(des, ptr)
 
#define QFILE_GET_OVERFLOW_VPID(des, ptr)
 
#define QFILE_PUT_TUPLE_COUNT(ptr, val)   OR_PUT_INT ((ptr) + QFILE_TUPLE_COUNT_OFFSET, (val))
 
#define QFILE_PUT_PREV_PAGE_ID(ptr, val)   OR_PUT_INT ((ptr) + QFILE_PREV_PAGE_ID_OFFSET, (val))
 
#define QFILE_PUT_NEXT_PAGE_ID(ptr, val)   OR_PUT_INT ((ptr) + QFILE_NEXT_PAGE_ID_OFFSET, (val))
 
#define QFILE_PUT_LAST_TUPLE_OFFSET(ptr, val)   OR_PUT_INT ((ptr) + QFILE_LAST_TUPLE_OFFSET, (val))
 
#define QFILE_PUT_OVERFLOW_PAGE_ID(ptr, val)   OR_PUT_INT ((ptr) + QFILE_OVERFLOW_PAGE_ID_OFFSET, (val))
 
#define QFILE_PUT_PREV_VOLUME_ID(ptr, val)   OR_PUT_SHORT ((ptr) + QFILE_PREV_VOL_ID_OFFSET, (val))
 
#define QFILE_PUT_NEXT_VOLUME_ID(ptr, val)   OR_PUT_SHORT ((ptr) + QFILE_NEXT_VOL_ID_OFFSET, (val))
 
#define QFILE_PUT_OVERFLOW_VOLUME_ID(ptr, val)   OR_PUT_SHORT ((ptr) + QFILE_OVERFLOW_VOL_ID_OFFSET, (val))
 
#define QFILE_PUT_PREV_VPID(ptr, vpid)
 
#define QFILE_PUT_NEXT_VPID(ptr, vpid)
 
#define QFILE_PUT_OVERFLOW_VPID(ptr, vpid)
 
#define QFILE_PUT_PREV_VPID_NULL(ptr)
 
#define QFILE_PUT_NEXT_VPID_NULL(ptr)
 
#define QFILE_PUT_OVERFLOW_VPID_NULL(ptr)
 
#define QFILE_COPY_VPID(ptr1, ptr2)
 
#define QFILE_OVERFLOW_TUPLE_PAGE_SIZE_OFFSET   12
 
#define QFILE_GET_OVERFLOW_TUPLE_PAGE_SIZE(ptr)   (int) OR_GET_INT ((ptr) + QFILE_OVERFLOW_TUPLE_PAGE_SIZE_OFFSET)
 
#define QFILE_PUT_OVERFLOW_TUPLE_PAGE_SIZE(ptr, val)   OR_PUT_INT ((ptr) + QFILE_OVERFLOW_TUPLE_PAGE_SIZE_OFFSET, (val))
 
#define QFILE_MAX_TUPLE_SIZE_IN_PAGE   (DB_PAGESIZE - QFILE_PAGE_HEADER_SIZE)
 
#define QFILE_TUPLE_LENGTH_SIZE   8
 
#define QFILE_TUPLE_LENGTH_OFFSET   0
 
#define QFILE_TUPLE_PREV_LENGTH_OFFSET   4
 
#define QFILE_TUPLE_VALUE_HEADER_LENGTH   8
 
#define QFILE_TUPLE_VALUE_HEADER_SIZE   8
 
#define QFILE_TUPLE_VALUE_FLAG_SIZE   4
 
#define QFILE_TUPLE_VALUE_LENGTH_SIZE   4
 
#define QFILE_TUPLE_VALUE_FLAG_OFFSET   0
 
#define QFILE_TUPLE_VALUE_LENGTH_OFFSET   4
 
#define QFILE_GET_TUPLE_LENGTH(tpl)   OR_GET_INT ((tpl) + QFILE_TUPLE_LENGTH_OFFSET)
 
#define QFILE_GET_PREV_TUPLE_LENGTH(tpl)   OR_GET_INT ((tpl) + QFILE_TUPLE_PREV_LENGTH_OFFSET)
 
#define QFILE_PUT_TUPLE_LENGTH(tpl, val)   OR_PUT_INT ((tpl) + QFILE_TUPLE_LENGTH_OFFSET,val)
 
#define QFILE_PUT_PREV_TUPLE_LENGTH(tpl, val)   OR_PUT_INT ((tpl) + QFILE_TUPLE_PREV_LENGTH_OFFSET,val)
 
#define QFILE_GET_TUPLE_VALUE_FLAG(ptr)   (QFILE_TUPLE_VALUE_FLAG) OR_GET_INT ((ptr) + QFILE_TUPLE_VALUE_FLAG_OFFSET)
 
#define QFILE_GET_TUPLE_VALUE_LENGTH(ptr)   (int) OR_GET_INT ((ptr) + QFILE_TUPLE_VALUE_LENGTH_OFFSET)
 
#define QFILE_PUT_TUPLE_VALUE_FLAG(ptr, val)   OR_PUT_INT ((ptr) + QFILE_TUPLE_VALUE_FLAG_OFFSET, (val))
 
#define QFILE_PUT_TUPLE_VALUE_LENGTH(ptr, val)   OR_PUT_INT ((ptr) + QFILE_TUPLE_VALUE_LENGTH_OFFSET, (val))
 
#define QFILE_GET_TUPLE_VALUE_HEADER_POSITION(tpl, ind, valp)
 
#define QFILE_OVERFLOW_TUPLE_COUNT_FLAG   -2
 
#define QFILE_CLEAR_LIST_ID(list_id)
 
#define QFILE_OUTER_LIST   0 /* outer list file indicator */
 
#define QFILE_INNER_LIST   1 /* inner list file indicator */
 
#define QFILE_SET_FLAG(var, flag)   ((var) |= (flag))
 
#define QFILE_CLEAR_FLAG(var, flag)   ((var) &= (flag))
 
#define QFILE_IS_FLAG_SET(var, flag)   ((var) & (flag))
 
#define QFILE_IS_FLAG_SET_BOTH(var, flag1, flag2)   (((var) & (flag1)) && ((var) & (flag2)))
 
#define DO_NOT_COLLECT_EXEC_STATS(flag)   ((flag) & DONT_COLLECT_EXEC_STATS)
 
#define IS_XASL_TRACE_TEXT(flag)   (((flag) & XASL_TRACE_TEXT) != 0)
 
#define IS_XASL_TRACE_JSON(flag)   (((flag) & XASL_TRACE_JSON) != 0)
 
#define IS_TRIGGER_INVOLVED(flag)   (((flag) & TRIGGER_IS_INVOLVED) != 0)
 
#define IS_XASL_CACHE_PINNED_REFERENCE(flag)   (((flag) & XASL_CACHE_PINNED_REFERENCE) != 0)
 
#define IS_QUERY_EXECUTED_WITHOUT_DATA_BUFFERS(flag)   (((flag) & EXECUTE_QUERY_WITHOUT_DATA_BUFFERS) != 0)
 
#define IS_QUERY_EXECUTE_WITH_COMMIT(flag)   (((flag) & EXECUTE_QUERY_WITH_COMMIT) != 0)
 
#define IS_TRAN_AUTO_COMMIT(flag)   (((flag) & TRAN_AUTO_COMMIT) != 0)
 

Typedefs

typedef char * QFILE_TUPLE
 
typedef struct qfile_tuple_record QFILE_TUPLE_RECORD
 
typedef struct qfile_tuple_value_header QFILE_TUPLE_VALUE_HEADER
 
typedef struct qfile_tuple_value_type_list QFILE_TUPLE_VALUE_TYPE_LIST
 
typedef struct qfile_tuple_value_position QFILE_TUPLE_VALUE_POSITION
 
typedef struct qfile_list_merge_info QFILE_LIST_MERGE_INFO
 
typedef struct qfile_tuple_descriptor QFILE_TUPLE_DESCRIPTOR
 
typedef struct sort_list SORT_LIST
 
typedef struct qfile_list_id QFILE_LIST_ID
 
typedef struct qfile_tuple_position QFILE_TUPLE_POSITION
 
typedef struct qfile_list_scan_id QFILE_LIST_SCAN_ID
 
typedef struct qfile_sorted_list_id QFILE_SORTED_LIST_ID
 
typedef struct qfile_sort_scan_id QFILE_SORT_SCAN_ID
 
typedef int QUERY_FLAG
 

Enumerations

enum  JOIN_TYPE {
  NO_JOIN = -1, JOIN_INNER = 0, JOIN_LEFT, JOIN_RIGHT,
  JOIN_OUTER, JOIN_CSELECT
}
 
enum  QFILE_TUPLE_VALUE_FLAG { V_BOUND = 1, V_UNBOUND }
 
enum  QPROC_SINGLE_FETCH { QPROC_NO_SINGLE_INNER = 0, QPROC_SINGLE_INNER, QPROC_SINGLE_OUTER, QPROC_NO_SINGLE_OUTER }
 
enum  QFILE_TUPLE_TYPE {
  T_UNKNOWN, T_SINGLE_BOUND_ITEM, T_NORMAL, T_SORTKEY,
  T_MERGE
}
 
enum  SORT_TYPE {
  SORT_TEMP = 0, SORT_GROUPBY, SORT_ORDERBY, SORT_DISTINCT,
  SORT_LIMIT
}
 
enum  SORT_ORDER { S_ASC = 1, S_DESC }
 
enum  SORT_NULLS { S_NULLS_FIRST = 1, S_NULLS_LAST }
 
enum  {
  QFILE_FLAG_RESULT_FILE = 0x0001, QFILE_FLAG_UNION = 0x0010, QFILE_FLAG_INTERSECT = 0x0020, QFILE_FLAG_DIFFERENCE = 0x0040,
  QFILE_FLAG_ALL = 0x0100, QFILE_FLAG_DISTINCT = 0x0200, QFILE_FLAG_USE_KEY_BUFFER = 0x0400
}
 
enum  QUERY_EXEC_MODE { SYNC_EXEC = 0, DEFAULT_EXEC_MODE = SYNC_EXEC }
 
enum  {
  NOT_FROM_RESULT_CACHE = 0x0001, RESULT_CACHE_REQUIRED = 0x0002, RESULT_CACHE_INHIBITED = 0x0004, RESULT_HOLDABLE = 0x0008,
  DONT_COLLECT_EXEC_STATS = 0x0010, MRO_CANDIDATE = 0x0020, MRO_IS_USED = 0x0040, SORT_LIMIT_CANDIDATE = 0x0080,
  SORT_LIMIT_USED = 0x0100, XASL_TRACE_TEXT = 0x0200, XASL_TRACE_JSON = 0x0400, TRIGGER_IS_INVOLVED = 0x0800,
  RETURN_GENERATED_KEYS = 0x1000, XASL_CACHE_PINNED_REFERENCE = 0x2000, EXECUTE_QUERY_WITHOUT_DATA_BUFFERS = 0x4000, EXECUTE_QUERY_WITH_COMMIT = 0x8000,
  TRAN_AUTO_COMMIT = 0x000010000
}
 

Macro Definition Documentation

#define DO_NOT_COLLECT_EXEC_STATS (   flag)    ((flag) & DONT_COLLECT_EXEC_STATS)

Definition at line 573 of file query_list.h.

Referenced by xqmgr_execute_query(), and xqmgr_prepare_and_execute_query().

#define IS_OUTER_JOIN_TYPE (   t)    ((t) == JOIN_LEFT || (t) == JOIN_RIGHT || (t) == JOIN_OUTER)
#define IS_QUERY_EXECUTE_WITH_COMMIT (   flag)    (((flag) & EXECUTE_QUERY_WITH_COMMIT) != 0)

Definition at line 582 of file query_list.h.

Referenced by qmgr_execute_query(), and sqmgr_execute_query().

#define IS_QUERY_EXECUTED_WITHOUT_DATA_BUFFERS (   flag)    (((flag) & EXECUTE_QUERY_WITHOUT_DATA_BUFFERS) != 0)

Definition at line 581 of file query_list.h.

Referenced by qmgr_execute_query(), and sqmgr_execute_query().

#define IS_TRAN_AUTO_COMMIT (   flag)    (((flag) & TRAN_AUTO_COMMIT) != 0)
#define IS_TRIGGER_INVOLVED (   flag)    (((flag) & TRIGGER_IS_INVOLVED) != 0)

Definition at line 578 of file query_list.h.

Referenced by xqmgr_execute_query(), and xqmgr_prepare_and_execute_query().

#define IS_XASL_CACHE_PINNED_REFERENCE (   flag)    (((flag) & XASL_CACHE_PINNED_REFERENCE) != 0)

Definition at line 580 of file query_list.h.

Referenced by xqmgr_execute_query().

#define IS_XASL_TRACE_JSON (   flag)    (((flag) & XASL_TRACE_JSON) != 0)

Definition at line 576 of file query_list.h.

Referenced by xqmgr_execute_query(), and xqmgr_prepare_and_execute_query().

#define IS_XASL_TRACE_TEXT (   flag)    (((flag) & XASL_TRACE_TEXT) != 0)

Definition at line 575 of file query_list.h.

Referenced by xqmgr_execute_query(), and xqmgr_prepare_and_execute_query().

#define QFILE_CLEAR_FLAG (   var,
  flag 
)    ((var) &= (flag))

Definition at line 523 of file query_list.h.

#define QFILE_COPY_VPID (   ptr1,
  ptr2 
)
#define QFILE_GET_LAST_TUPLE_OFFSET (   ptr)    (PAGEID) OR_GET_INT ((ptr) + QFILE_LAST_TUPLE_OFFSET)
#define QFILE_GET_NEXT_PAGE_ID (   ptr)    (PAGEID) OR_GET_INT ((ptr) + QFILE_NEXT_PAGE_ID_OFFSET)

Definition at line 73 of file query_list.h.

Referenced by cursor_next_tuple(), and qfile_has_next_page().

#define QFILE_GET_NEXT_VOLUME_ID (   ptr)    (VOLID) OR_GET_SHORT ((ptr) + QFILE_NEXT_VOL_ID_OFFSET)

Definition at line 85 of file query_list.h.

#define QFILE_GET_NEXT_VPID (   des,
  ptr 
)
Value:
do \
{ \
(des)->pageid = (PAGEID) OR_GET_INT ((ptr) + QFILE_NEXT_PAGE_ID_OFFSET); \
(des)->volid = (VOLID) OR_GET_SHORT ((ptr) + QFILE_NEXT_VOL_ID_OFFSET); \
} \
while (0)
INT16 VOLID
#define QFILE_NEXT_PAGE_ID_OFFSET
Definition: query_list.h:52
#define QFILE_NEXT_VOL_ID_OFFSET
Definition: query_list.h:56
#define OR_GET_INT(ptr)
while(1)
Definition: cnvlex.c:816
INT32 PAGEID
#define OR_GET_SHORT(ptr)

Definition at line 104 of file query_list.h.

Referenced by cursor_get_list_file_page(), cursor_next_tuple(), qfile_copy_list_pages(), qfile_scan_next(), and xqfile_get_list_file_page().

#define QFILE_GET_OVERFLOW_TUPLE_PAGE_SIZE (   ptr)    (int) OR_GET_INT ((ptr) + QFILE_OVERFLOW_TUPLE_PAGE_SIZE_OFFSET)

Definition at line 209 of file query_list.h.

#define QFILE_GET_OVERFLOW_VOLUME_ID (   ptr)    (VOLID) OR_GET_SHORT ((ptr) + QFILE_OVERFLOW_VOL_ID_OFFSET)

Definition at line 88 of file query_list.h.

#define QFILE_GET_OVERFLOW_VPID (   des,
  ptr 
)
#define QFILE_GET_PREV_PAGE_ID (   ptr)    (PAGEID) OR_GET_INT ((ptr) + QFILE_PREV_PAGE_ID_OFFSET)

Definition at line 70 of file query_list.h.

Referenced by cursor_prev_tuple(), and qfile_scan_prev().

#define QFILE_GET_PREV_TUPLE_LENGTH (   tpl)    OR_GET_INT ((tpl) + QFILE_TUPLE_PREV_LENGTH_OFFSET)

Definition at line 241 of file query_list.h.

Referenced by cursor_prev_tuple(), and qfile_scan_prev().

#define QFILE_GET_PREV_VOLUME_ID (   ptr)    (VOLID) OR_GET_SHORT ((ptr) + QFILE_PREV_VOL_ID_OFFSET)

Definition at line 82 of file query_list.h.

#define QFILE_GET_PREV_VPID (   des,
  ptr 
)
Value:
do \
{ \
(des)->pageid = (PAGEID) OR_GET_INT ((ptr) + QFILE_PREV_PAGE_ID_OFFSET); \
(des)->volid = (VOLID) OR_GET_SHORT ((ptr) + QFILE_PREV_VOL_ID_OFFSET); \
} \
while (0)
#define QFILE_PREV_PAGE_ID_OFFSET
Definition: query_list.h:51
INT16 VOLID
#define QFILE_PREV_VOL_ID_OFFSET
Definition: query_list.h:55
#define OR_GET_INT(ptr)
while(1)
Definition: cnvlex.c:816
INT32 PAGEID
#define OR_GET_SHORT(ptr)

Definition at line 96 of file query_list.h.

Referenced by cursor_prev_tuple(), and qfile_scan_prev().

#define QFILE_GET_TUPLE_VALUE_HEADER_POSITION (   tpl,
  ind,
  valp 
)
Value:
do \
{ \
int _k; \
(valp) = (char*) (tpl) + QFILE_TUPLE_LENGTH_SIZE; \
for (_k = 0; _k < (ind); _k++) \
{ \
} \
} \
while (0)
#define QFILE_TUPLE_VALUE_HEADER_SIZE
Definition: query_list.h:229
#define QFILE_GET_TUPLE_VALUE_LENGTH(ptr)
Definition: query_list.h:253
#define QFILE_TUPLE_LENGTH_SIZE
Definition: query_list.h:224
while(1)
Definition: cnvlex.c:816
for(p=libs;*p;p++)
Definition: dynamic_load.c:968

Definition at line 262 of file query_list.h.

Referenced by qexec_merge_tuple(), qexec_ordby_put_next(), qexec_size_remaining(), qfile_make_sort_key(), and qfile_save_merge_tuple().

#define QFILE_INNER_LIST   1 /* inner list file indicator */

Definition at line 492 of file query_list.h.

Referenced by gen_outer(), and make_mergelist_proc().

#define QFILE_IS_FLAG_SET (   var,
  flag 
)    ((var) & (flag))

Definition at line 524 of file query_list.h.

Referenced by qfile_combine_two_list(), and qfile_open_list().

#define QFILE_IS_FLAG_SET_BOTH (   var,
  flag1,
  flag2 
)    (((var) & (flag1)) && ((var) & (flag2)))

Definition at line 525 of file query_list.h.

Referenced by qfile_combine_two_list().

#define QFILE_LAST_TUPLE_OFFSET   12

Definition at line 53 of file query_list.h.

Referenced by qfile_initialize_page_header(), and qmgr_put_page_header().

#define QFILE_NEXT_PAGE_ID_OFFSET   8

Definition at line 52 of file query_list.h.

Referenced by qfile_initialize_page_header(), and qmgr_put_page_header().

#define QFILE_NEXT_VOL_ID_OFFSET   22

Definition at line 56 of file query_list.h.

Referenced by qfile_initialize_page_header(), and qmgr_put_page_header().

#define QFILE_NULL_PAGE_OFFSET   -1

Definition at line 61 of file query_list.h.

#define QFILE_OUTER_LIST   0 /* outer list file indicator */
#define QFILE_OVERFLOW_PAGE_ID_OFFSET   16

Definition at line 54 of file query_list.h.

Referenced by qfile_initialize_page_header(), and qmgr_put_page_header().

#define QFILE_OVERFLOW_TUPLE_COUNT_FLAG   -2

Definition at line 275 of file query_list.h.

Referenced by qfile_allocate_new_ovf_page(), and xqfile_get_list_file_page().

#define QFILE_OVERFLOW_TUPLE_PAGE_SIZE_OFFSET   12

Definition at line 207 of file query_list.h.

#define QFILE_OVERFLOW_VOL_ID_OFFSET   24

Definition at line 57 of file query_list.h.

Referenced by qfile_initialize_page_header(), and qmgr_put_page_header().

#define QFILE_PREV_PAGE_ID_OFFSET   4

Definition at line 51 of file query_list.h.

Referenced by qfile_initialize_page_header(), and qmgr_put_page_header().

#define QFILE_PREV_VOL_ID_OFFSET   20

Definition at line 55 of file query_list.h.

Referenced by qfile_initialize_page_header(), and qmgr_put_page_header().

#define QFILE_PUT_LAST_TUPLE_OFFSET (   ptr,
  val 
)    OR_PUT_INT ((ptr) + QFILE_LAST_TUPLE_OFFSET, (val))

Definition at line 129 of file query_list.h.

Referenced by qfile_allocate_new_page(), and qfile_allocate_new_page_if_need().

#define QFILE_PUT_NEXT_PAGE_ID (   ptr,
  val 
)    OR_PUT_INT ((ptr) + QFILE_NEXT_PAGE_ID_OFFSET, (val))

Definition at line 126 of file query_list.h.

#define QFILE_PUT_NEXT_VOLUME_ID (   ptr,
  val 
)    OR_PUT_SHORT ((ptr) + QFILE_NEXT_VOL_ID_OFFSET, (val))

Definition at line 138 of file query_list.h.

#define QFILE_PUT_NEXT_VPID (   ptr,
  vpid 
)
Value:
do \
{ \
} \
while (0)
#define QFILE_NEXT_PAGE_ID_OFFSET
Definition: query_list.h:52
#define QFILE_NEXT_VOL_ID_OFFSET
Definition: query_list.h:56
#define OR_PUT_SHORT(ptr, val)
#define OR_PUT_INT(ptr, val)
while(1)
Definition: cnvlex.c:816

Definition at line 157 of file query_list.h.

Referenced by qfile_allocate_new_page(), and qfile_copy_list_pages().

#define QFILE_PUT_NEXT_VPID_NULL (   ptr)
Value:
do \
{ \
} \
while (0)
#define NULL_PAGEID
#define QFILE_NEXT_PAGE_ID_OFFSET
Definition: query_list.h:52
#define QFILE_NEXT_VOL_ID_OFFSET
Definition: query_list.h:56
#define OR_PUT_SHORT(ptr, val)
#define OR_PUT_INT(ptr, val)
while(1)
Definition: cnvlex.c:816
#define NULL_VOLID

Definition at line 181 of file query_list.h.

Referenced by qexec_execute_query(), qexec_setup_list_id(), qfile_allocate_new_ovf_page(), qfile_allocate_new_page(), and qfile_close_list().

#define QFILE_PUT_OVERFLOW_PAGE_ID (   ptr,
  val 
)    OR_PUT_INT ((ptr) + QFILE_OVERFLOW_PAGE_ID_OFFSET, (val))

Definition at line 132 of file query_list.h.

#define QFILE_PUT_OVERFLOW_TUPLE_PAGE_SIZE (   ptr,
  val 
)    OR_PUT_INT ((ptr) + QFILE_OVERFLOW_TUPLE_PAGE_SIZE_OFFSET, (val))

Definition at line 212 of file query_list.h.

Referenced by qfile_allocate_new_ovf_page().

#define QFILE_PUT_OVERFLOW_VOLUME_ID (   ptr,
  val 
)    OR_PUT_SHORT ((ptr) + QFILE_OVERFLOW_VOL_ID_OFFSET, (val))

Definition at line 141 of file query_list.h.

#define QFILE_PUT_OVERFLOW_VPID (   ptr,
  vpid 
)
Value:
do \
{ \
} \
while (0)
#define QFILE_OVERFLOW_PAGE_ID_OFFSET
Definition: query_list.h:54
#define QFILE_OVERFLOW_VOL_ID_OFFSET
Definition: query_list.h:57
#define OR_PUT_SHORT(ptr, val)
#define OR_PUT_INT(ptr, val)
while(1)
Definition: cnvlex.c:816

Definition at line 165 of file query_list.h.

Referenced by qfile_allocate_new_ovf_page(), and qfile_copy_list_pages().

#define QFILE_PUT_OVERFLOW_VPID_NULL (   ptr)
Value:
do \
{ \
} \
while (0)
#define QFILE_OVERFLOW_PAGE_ID_OFFSET
Definition: query_list.h:54
#define NULL_PAGEID
#define QFILE_OVERFLOW_VOL_ID_OFFSET
Definition: query_list.h:57
#define OR_PUT_SHORT(ptr, val)
#define OR_PUT_INT(ptr, val)
while(1)
Definition: cnvlex.c:816
#define NULL_VOLID

Definition at line 189 of file query_list.h.

Referenced by qfile_add_overflow_tuple_to_list(), qfile_add_tuple_get_pos_in_list(), qfile_add_tuple_to_list(), qfile_allocate_new_ovf_page(), qfile_allocate_new_page(), and qfile_get_first_page().

#define QFILE_PUT_PREV_PAGE_ID (   ptr,
  val 
)    OR_PUT_INT ((ptr) + QFILE_PREV_PAGE_ID_OFFSET, (val))

Definition at line 123 of file query_list.h.

#define QFILE_PUT_PREV_TUPLE_LENGTH (   tpl,
  val 
)    OR_PUT_INT ((tpl) + QFILE_TUPLE_PREV_LENGTH_OFFSET,val)

Definition at line 247 of file query_list.h.

Referenced by qfile_add_tuple_to_list_id().

#define QFILE_PUT_PREV_VOLUME_ID (   ptr,
  val 
)    OR_PUT_SHORT ((ptr) + QFILE_PREV_VOL_ID_OFFSET, (val))

Definition at line 135 of file query_list.h.

#define QFILE_PUT_PREV_VPID (   ptr,
  vpid 
)
Value:
do \
{ \
} \
while (0)
#define QFILE_PREV_PAGE_ID_OFFSET
Definition: query_list.h:51
#define QFILE_PREV_VOL_ID_OFFSET
Definition: query_list.h:55
#define OR_PUT_SHORT(ptr, val)
#define OR_PUT_INT(ptr, val)
while(1)
Definition: cnvlex.c:816

Definition at line 149 of file query_list.h.

Referenced by qfile_allocate_new_page(), qfile_copy_list_pages(), and qfile_get_first_page().

#define QFILE_PUT_PREV_VPID_NULL (   ptr)
Value:
do \
{ \
} \
while (0)
#define QFILE_PREV_PAGE_ID_OFFSET
Definition: query_list.h:51
#define QFILE_PREV_VOL_ID_OFFSET
Definition: query_list.h:55
#define NULL_PAGEID
#define OR_PUT_SHORT(ptr, val)
#define OR_PUT_INT(ptr, val)
while(1)
Definition: cnvlex.c:816
#define NULL_VOLID

Definition at line 173 of file query_list.h.

#define QFILE_PUT_TUPLE_COUNT (   ptr,
  val 
)    OR_PUT_INT ((ptr) + QFILE_TUPLE_COUNT_OFFSET, (val))
#define QFILE_RESERVED_OFFSET   26

Definition at line 58 of file query_list.h.

Referenced by qfile_initialize_page_header(), and qmgr_put_page_header().

#define QFILE_TUPLE_COUNT_OFFSET   0

Definition at line 50 of file query_list.h.

Referenced by qfile_initialize_page_header(), and qmgr_put_page_header().

#define QFILE_TUPLE_LENGTH_OFFSET   0

Definition at line 225 of file query_list.h.

#define QFILE_TUPLE_PREV_LENGTH_OFFSET   4

Definition at line 226 of file query_list.h.

#define QFILE_TUPLE_VALUE_FLAG_OFFSET   0

Definition at line 233 of file query_list.h.

#define QFILE_TUPLE_VALUE_FLAG_SIZE   4

Definition at line 230 of file query_list.h.

#define QFILE_TUPLE_VALUE_HEADER_LENGTH   8
#define QFILE_TUPLE_VALUE_LENGTH_OFFSET   4

Definition at line 234 of file query_list.h.

#define QFILE_TUPLE_VALUE_LENGTH_SIZE   4

Definition at line 231 of file query_list.h.

Typedef Documentation

typedef struct qfile_list_id QFILE_LIST_ID

Definition at line 425 of file query_list.h.

Definition at line 335 of file query_list.h.

Definition at line 495 of file query_list.h.

Definition at line 538 of file query_list.h.

Definition at line 530 of file query_list.h.

typedef char* QFILE_TUPLE

Definition at line 281 of file query_list.h.

Definition at line 362 of file query_list.h.

Definition at line 480 of file query_list.h.

Definition at line 284 of file query_list.h.

Definition at line 298 of file query_list.h.

Definition at line 314 of file query_list.h.

Definition at line 306 of file query_list.h.

typedef int QUERY_FLAG

Definition at line 585 of file query_list.h.

typedef struct sort_list SORT_LIST

Definition at line 410 of file query_list.h.

Enumeration Type Documentation

anonymous enum
Enumerator
QFILE_FLAG_RESULT_FILE 
QFILE_FLAG_UNION 
QFILE_FLAG_INTERSECT 
QFILE_FLAG_DIFFERENCE 
QFILE_FLAG_ALL 
QFILE_FLAG_DISTINCT 
QFILE_FLAG_USE_KEY_BUFFER 

Definition at line 511 of file query_list.h.

anonymous enum
Enumerator
NOT_FROM_RESULT_CACHE 
RESULT_CACHE_REQUIRED 
RESULT_CACHE_INHIBITED 
RESULT_HOLDABLE 
DONT_COLLECT_EXEC_STATS 
MRO_CANDIDATE 
MRO_IS_USED 
SORT_LIMIT_CANDIDATE 
SORT_LIMIT_USED 
XASL_TRACE_TEXT 
XASL_TRACE_JSON 
TRIGGER_IS_INVOLVED 
RETURN_GENERATED_KEYS 
XASL_CACHE_PINNED_REFERENCE 
EXECUTE_QUERY_WITHOUT_DATA_BUFFERS 
EXECUTE_QUERY_WITH_COMMIT 
TRAN_AUTO_COMMIT 

Definition at line 552 of file query_list.h.

enum JOIN_TYPE
Enumerator
NO_JOIN 
JOIN_INNER 
JOIN_LEFT 
JOIN_RIGHT 
JOIN_OUTER 
JOIN_CSELECT 

Definition at line 32 of file query_list.h.

Enumerator
T_UNKNOWN 
T_SINGLE_BOUND_ITEM 
T_NORMAL 
T_SORTKEY 
T_MERGE 

Definition at line 352 of file query_list.h.

Enumerator
V_BOUND 
V_UNBOUND 

Definition at line 291 of file query_list.h.

Enumerator
QPROC_NO_SINGLE_INNER 
QPROC_SINGLE_INNER 
QPROC_SINGLE_OUTER 
QPROC_NO_SINGLE_OUTER 

Definition at line 326 of file query_list.h.

Enumerator
SYNC_EXEC 
DEFAULT_EXEC_MODE 

Definition at line 546 of file query_list.h.

enum SORT_NULLS
Enumerator
S_NULLS_FIRST 
S_NULLS_LAST 

Definition at line 404 of file query_list.h.

enum SORT_ORDER
Enumerator
S_ASC 
S_DESC 

Definition at line 398 of file query_list.h.

enum SORT_TYPE
Enumerator
SORT_TEMP 
SORT_GROUPBY 
SORT_ORDERBY 
SORT_DISTINCT 
SORT_LIMIT 

Definition at line 389 of file query_list.h.