Skip to content

File cursor.c

FileList > cubrid > src > query > cursor.c

Go to the source code of this file

  • #include "config.h"
  • #include <stdio.h>
  • #include <string.h>
  • #include <assert.h>
  • #include "error_manager.h"
  • #include "storage_common.h"
  • #include "memory_alloc.h"
  • #include "object_primitive.h"
  • #include "object_representation.h"
  • #include "db.h"
  • #include "locator_cl.h"
  • #include "server_interface.h"
  • #include "work_space.h"
  • #include "set_object.h"
  • #include "cursor.h"
  • #include "parser_support.h"
  • #include "virtual_object.h"
  • #include "network_interface_cl.h"
  • #include "dbtype.h"

Public Types

Type Name
enum cursor_8c_1acedc21792913cbec6ca54f6981c5eddd

Public Functions

Type Name
void cursor_close (CURSOR_ID * cursor_id_p)
int cursor_copy_list_id (QFILE_LIST_ID * dest_list_id_p, const QFILE_LIST_ID * src_list_id_p)
int cursor_copy_vobj_to_dbvalue (struct or_buf * buffer_p, DB_VALUE * value_p)
int cursor_fetch_page_having_tuple (CURSOR_ID * cursor_id_p, VPID * vpid_p, int position, int offset)
int cursor_first_tuple (CURSOR_ID * cursor_id_p)
void cursor_free (CURSOR_ID * cursor_id_p)
int cursor_get_current_oid (CURSOR_ID * cursor_id_p, DB_VALUE * value_p)
int cursor_get_tuple_value (CURSOR_ID * cursor_id_p, int index, DB_VALUE * value_p)
int cursor_get_tuple_value_list (CURSOR_ID * cursor_id_p, int size, DB_VALUE * value_list_p)
int cursor_last_tuple (CURSOR_ID * cursor_id_p)
int cursor_next_tuple (CURSOR_ID * cursor_id_p)
bool cursor_open (CURSOR_ID * cursor_id_p, QFILE_LIST_ID * list_id_p, bool updatable, bool is_oid_included)
int cursor_prev_tuple (CURSOR_ID * cursor_id_p)
void cursor_print_list (QUERY_ID query_id, QFILE_LIST_ID * list_id_p)
bool cursor_set_copy_tuple_value (CURSOR_ID * cursor_id_p, bool is_copy)
int cursor_set_oid_columns (CURSOR_ID * cursor_id_p, int * oid_col_no_p, int oid_col_no_cnt)
DB_FETCH_MODE cursor_set_prefetch_lock_mode (CURSOR_ID * cursor_id_p, DB_FETCH_MODE mode)

Public Static Functions

Type Name
void cursor_allocate_oid_buffer (CURSOR_ID * cursor_id_p)
int cursor_allocate_tuple_area (CURSOR_ID * cursor_id_p, int tuple_length)
int cursor_buffer_last_page (CURSOR_ID * cursor_id_p, VPID * vpid_p)
int cursor_construct_tuple_from_overflow_pages (CURSOR_ID * cursor_id_p, VPID * vpid_p)
int cursor_fetch_oids (CURSOR_ID * cursor_id_p, int oid_index, DB_FETCH_MODE instant_fetch_mode, DB_FETCH_MODE class_fetch_mode)
int cursor_fixup_set_vobjs (DB_VALUE * value)
int cursor_fixup_vobjs (DB_VALUE * val)
int cursor_get_first_tuple_value (char * tuple, QFILE_TUPLE_VALUE_TYPE_LIST * type_list, DB_VALUE * value, bool copy)
int cursor_get_list_file_page (CURSOR_ID * cursor_id, VPID * vpid)
OID * cursor_get_oid_from_tuple (char * tuple_p, DB_TYPE type)
OID * cursor_get_oid_from_vobj (OID * current_oid_p, int length)
int cursor_get_tuple_value_from_list (CURSOR_ID * c_id, int index, DB_VALUE * value, char * tuple)
int cursor_get_tuple_value_to_dbvalue (OR_BUF * buf, TP_DOMAIN * dom, QFILE_TUPLE_VALUE_FLAG val_flag, DB_VALUE * db_value, bool copy)
bool cursor_has_first_hidden_oid (CURSOR_ID * cursor_id_p)
bool cursor_has_set_vobjs (DB_SET * set)
void cursor_initialize_current_tuple_value_position (CURSOR_ID * cursor_id_p)
char * cursor_peek_tuple (CURSOR_ID * cursor_id)
int cursor_point_current_tuple (CURSOR_ID * cursor_id_p, int position, int offset)
int cursor_prefetch_column_oids (CURSOR_ID * cursor_id_p)
int cursor_prefetch_first_hidden_oid (CURSOR_ID * cursor_id_p)

Macros

Type Name
define CURSOR_BUFFER_AREA_SIZE [**IO\_MAX\_PAGE\_SIZE**](storage__common_8h.md#define-io_max_page_size)
define CURSOR_BUFFER_SIZE [**DB\_PAGESIZE**](storage__common_8h.md#define-db_pagesize)

Public Types Documentation

enum cursor_8c_1acedc21792913cbec6ca54f6981c5eddd

enum cursor_8c_1acedc21792913cbec6ca54f6981c5eddd {
    FIRST_TPL = -1,
    LAST_TPL = -2
};

Public Functions Documentation

function cursor_close

void cursor_close (
    CURSOR_ID * cursor_id_p
) 

function cursor_copy_list_id

int cursor_copy_list_id (
    QFILE_LIST_ID * dest_list_id_p,
    const  QFILE_LIST_ID * src_list_id_p
) 

function cursor_copy_vobj_to_dbvalue

int cursor_copy_vobj_to_dbvalue (
    struct  or_buf * buffer_p,
    DB_VALUE * value_p
) 

function cursor_fetch_page_having_tuple

int cursor_fetch_page_having_tuple (
    CURSOR_ID * cursor_id_p,
    VPID * vpid_p,
    int position,
    int offset
) 

function cursor_first_tuple

int cursor_first_tuple (
    CURSOR_ID * cursor_id_p
) 

function cursor_free

void cursor_free (
    CURSOR_ID * cursor_id_p
) 

function cursor_get_current_oid

int cursor_get_current_oid (
    CURSOR_ID * cursor_id_p,
    DB_VALUE * value_p
) 

function cursor_get_tuple_value

int cursor_get_tuple_value (
    CURSOR_ID * cursor_id_p,
    int index,
    DB_VALUE * value_p
) 

function cursor_get_tuple_value_list

int cursor_get_tuple_value_list (
    CURSOR_ID * cursor_id_p,
    int size,
    DB_VALUE * value_list_p
) 

function cursor_last_tuple

int cursor_last_tuple (
    CURSOR_ID * cursor_id_p
) 

function cursor_next_tuple

int cursor_next_tuple (
    CURSOR_ID * cursor_id_p
) 

function cursor_open

bool cursor_open (
    CURSOR_ID * cursor_id_p,
    QFILE_LIST_ID * list_id_p,
    bool updatable,
    bool is_oid_included
) 

function cursor_prev_tuple

int cursor_prev_tuple (
    CURSOR_ID * cursor_id_p
) 

function cursor_print_list

void cursor_print_list (
    QUERY_ID query_id,
    QFILE_LIST_ID * list_id_p
) 

function cursor_set_copy_tuple_value

bool cursor_set_copy_tuple_value (
    CURSOR_ID * cursor_id_p,
    bool is_copy
) 

function cursor_set_oid_columns

int cursor_set_oid_columns (
    CURSOR_ID * cursor_id_p,
    int * oid_col_no_p,
    int oid_col_no_cnt
) 

function cursor_set_prefetch_lock_mode

DB_FETCH_MODE cursor_set_prefetch_lock_mode (
    CURSOR_ID * cursor_id_p,
    DB_FETCH_MODE mode
) 

Public Static Functions Documentation

function cursor_allocate_oid_buffer

static void cursor_allocate_oid_buffer (
    CURSOR_ID * cursor_id_p
) 

function cursor_allocate_tuple_area

static int cursor_allocate_tuple_area (
    CURSOR_ID * cursor_id_p,
    int tuple_length
) 

function cursor_buffer_last_page

static int cursor_buffer_last_page (
    CURSOR_ID * cursor_id_p,
    VPID * vpid_p
) 

function cursor_construct_tuple_from_overflow_pages

static int cursor_construct_tuple_from_overflow_pages (
    CURSOR_ID * cursor_id_p,
    VPID * vpid_p
) 

function cursor_fetch_oids

static int cursor_fetch_oids (
    CURSOR_ID * cursor_id_p,
    int oid_index,
    DB_FETCH_MODE instant_fetch_mode,
    DB_FETCH_MODE class_fetch_mode
) 

function cursor_fixup_set_vobjs

static int cursor_fixup_set_vobjs (
    DB_VALUE * value
) 

function cursor_fixup_vobjs

static int cursor_fixup_vobjs (
    DB_VALUE * val
) 

function cursor_get_first_tuple_value

static int cursor_get_first_tuple_value (
    char * tuple,
    QFILE_TUPLE_VALUE_TYPE_LIST * type_list,
    DB_VALUE * value,
    bool copy
) 

function cursor_get_list_file_page

static int cursor_get_list_file_page (
    CURSOR_ID * cursor_id,
    VPID * vpid
) 

function cursor_get_oid_from_tuple

static OID * cursor_get_oid_from_tuple (
    char * tuple_p,
    DB_TYPE type
) 

function cursor_get_oid_from_vobj

static OID * cursor_get_oid_from_vobj (
    OID * current_oid_p,
    int length
) 

function cursor_get_tuple_value_from_list

static int cursor_get_tuple_value_from_list (
    CURSOR_ID * c_id,
    int index,
    DB_VALUE * value,
    char * tuple
) 

function cursor_get_tuple_value_to_dbvalue

static int cursor_get_tuple_value_to_dbvalue (
    OR_BUF * buf,
    TP_DOMAIN * dom,
    QFILE_TUPLE_VALUE_FLAG val_flag,
    DB_VALUE * db_value,
    bool copy
) 

function cursor_has_first_hidden_oid

static bool cursor_has_first_hidden_oid (
    CURSOR_ID * cursor_id_p
) 

function cursor_has_set_vobjs

static bool cursor_has_set_vobjs (
    DB_SET * set
) 

function cursor_initialize_current_tuple_value_position

static void cursor_initialize_current_tuple_value_position (
    CURSOR_ID * cursor_id_p
) 

function cursor_peek_tuple

static char * cursor_peek_tuple (
    CURSOR_ID * cursor_id
) 

function cursor_point_current_tuple

static int cursor_point_current_tuple (
    CURSOR_ID * cursor_id_p,
    int position,
    int offset
) 

function cursor_prefetch_column_oids

static int cursor_prefetch_column_oids (
    CURSOR_ID * cursor_id_p
) 

function cursor_prefetch_first_hidden_oid

static int cursor_prefetch_first_hidden_oid (
    CURSOR_ID * cursor_id_p
) 

Macro Definition Documentation

define CURSOR_BUFFER_AREA_SIZE

#define CURSOR_BUFFER_AREA_SIZE `IO_MAX_PAGE_SIZE`

define CURSOR_BUFFER_SIZE

#define CURSOR_BUFFER_SIZE `DB_PAGESIZE`


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