Skip to content

File serial.c

FileList > cubrid > src > query > serial.c

Go to the source code of this file

  • #include "config.h"
  • #include <assert.h>
  • #include <errno.h>
  • #include "serial.h"
  • #include "memory_hash.h"
  • #include "storage_common.h"
  • #include "heap_file.h"
  • #include "log_append.hpp"
  • #include "numeric_opfunc.h"
  • #include "object_primitive.h"
  • #include "record_descriptor.hpp"
  • #include "server_interface.h"
  • #include "xserver_interface.h"
  • #include "slotted_page.h"
  • #include "dbtype.h"
  • #include "xasl_cache.h"
  • #include "memory_wrapper.hpp"

Classes

Type Name
struct serial_cache_area
struct serial_cache_pool
struct serial_entry

Public Types

Type Name
typedef struct serial_cache_area SERIAL_CACHE_AREA
typedef struct serial_entry SERIAL_CACHE_ENTRY
typedef struct serial_cache_pool SERIAL_CACHE_POOL
enum SR_ATTRIBUTES

Public Attributes

Type Name
ATTR_ID serial_Attrs_id
SERIAL_CACHE_POOL serial_Cache_pool = /* multi line expression */
BTID serial_Cached_btid = [**BTID\_INITIALIZER**](storage__common_8h.md#define-btid_initializer)
int serial_Num_attrs = -1

Public Functions

Type Name
int serial_cache_index_btid (THREAD_ENTRY * thread_p)
void serial_finalize_cache_pool (void)
void serial_get_index_btid (BTID * output)
int serial_initialize_cache_pool (THREAD_ENTRY * thread_p)
void xserial_decache (THREAD_ENTRY * thread_p, OID * oidp)
int xserial_get_current_value (THREAD_ENTRY * thread_p, DB_VALUE * result_num, const OID * oid_p, int cached_num)
int xserial_get_next_value (THREAD_ENTRY * thread_p, DB_VALUE * result_num, const OID * oid_p, int cached_num, int num_alloc, int is_auto_increment, bool force_set_last_insert_id)

Public Static Functions

Type Name
SERIAL_CACHE_AREA * serial_alloc_cache_area (int num)
SERIAL_CACHE_ENTRY * serial_alloc_cache_entry (void)
void serial_clear_value (SERIAL_CACHE_ENTRY * entry)
int serial_get_attrid (THREAD_ENTRY * thread_p, int attr_index, ATTR_ID & attrid)
int serial_get_next_cached_value (THREAD_ENTRY * thread_p, SERIAL_CACHE_ENTRY * entry, int num_alloc)
int serial_get_nth_value (DB_VALUE * inc_val, DB_VALUE * cur_val, DB_VALUE * min_val, DB_VALUE * max_val, DB_VALUE * cyclic, int nth, DB_VALUE * result_val)
int serial_load_attribute_info_of_db_serial (THREAD_ENTRY * thread_p)
void serial_set_cache_entry (SERIAL_CACHE_ENTRY * entry, DB_VALUE * inc_val, DB_VALUE * cur_val, DB_VALUE * min_val, DB_VALUE * max_val, DB_VALUE * started, DB_VALUE * cyclic, DB_VALUE * last_val, int cached_num)
int serial_update_cur_val_of_serial (THREAD_ENTRY * thread_p, SERIAL_CACHE_ENTRY * entry, int num_alloc)
int serial_update_serial_object (THREAD_ENTRY * thread_p, PAGE_PTR pgptr, RECDES * recdesc, HEAP_CACHE_ATTRINFO * attr_info, const OID * serial_class_oidp, const OID * serial_oidp, DB_VALUE * key_val)
int xserial_get_current_value_internal (THREAD_ENTRY * thread_p, DB_VALUE * result_num, const OID * serial_oidp)
int xserial_get_next_value_internal (THREAD_ENTRY * thread_p, DB_VALUE * result_num, const OID * serial_oidp, int num_alloc)

Macros

Type Name
define NCACHE_OBJECTS 100
define NOT_FOUND -1

Public Types Documentation

typedef SERIAL_CACHE_AREA

typedef struct serial_cache_area SERIAL_CACHE_AREA;

typedef SERIAL_CACHE_ENTRY

typedef struct serial_entry SERIAL_CACHE_ENTRY;

typedef SERIAL_CACHE_POOL

typedef struct serial_cache_pool SERIAL_CACHE_POOL;

enum SR_ATTRIBUTES

enum SR_ATTRIBUTES {
    SERIAL_ATTR_UNIQUE_NAME_INDEX,
    SERIAL_ATTR_NAME_INDEX,
    SERIAL_ATTR_OWNER_INDEX,
    SERIAL_ATTR_CURRENT_VAL_INDEX,
    SERIAL_ATTR_INCREMENT_VAL_INDEX,
    SERIAL_ATTR_MAX_VAL_INDEX,
    SERIAL_ATTR_MIN_VAL_INDEX,
    SERIAL_ATTR_CYCLIC_INDEX,
    SERIAL_ATTR_STARTED_INDEX,
    SERIAL_ATTR_CLASS_NAME_INDEX,
    SERIAL_ATTR_ATTR_NAME_INDEX,
    SERIAL_ATTR_CACHED_NUM_INDEX,
    SERIAL_ATTR_MAX_INDEX
};

Public Attributes Documentation

variable serial_Attrs_id

ATTR_ID serial_Attrs_id[SERIAL_ATTR_MAX_INDEX];

variable serial_Cache_pool

SERIAL_CACHE_POOL serial_Cache_pool;

variable serial_Cached_btid

BTID serial_Cached_btid;

variable serial_Num_attrs

int serial_Num_attrs;

Public Functions Documentation

function serial_cache_index_btid

int serial_cache_index_btid (
    THREAD_ENTRY * thread_p
) 

function serial_finalize_cache_pool

void serial_finalize_cache_pool (
    void
) 

function serial_get_index_btid

void serial_get_index_btid (
    BTID * output
) 

function serial_initialize_cache_pool

int serial_initialize_cache_pool (
    THREAD_ENTRY * thread_p
) 

function xserial_decache

void xserial_decache (
    THREAD_ENTRY * thread_p,
    OID * oidp
) 

function xserial_get_current_value

int xserial_get_current_value (
    THREAD_ENTRY * thread_p,
    DB_VALUE * result_num,
    const  OID * oid_p,
    int cached_num
) 

function xserial_get_next_value

int xserial_get_next_value (
    THREAD_ENTRY * thread_p,
    DB_VALUE * result_num,
    const  OID * oid_p,
    int cached_num,
    int num_alloc,
    int is_auto_increment,
    bool force_set_last_insert_id
) 

Public Static Functions Documentation

function serial_alloc_cache_area

static SERIAL_CACHE_AREA * serial_alloc_cache_area (
    int num
) 

function serial_alloc_cache_entry

static SERIAL_CACHE_ENTRY * serial_alloc_cache_entry (
    void
) 

function serial_clear_value

static void serial_clear_value (
    SERIAL_CACHE_ENTRY * entry
) 

function serial_get_attrid

static int serial_get_attrid (
    THREAD_ENTRY * thread_p,
    int attr_index,
    ATTR_ID & attrid
) 

function serial_get_next_cached_value

static int serial_get_next_cached_value (
    THREAD_ENTRY * thread_p,
    SERIAL_CACHE_ENTRY * entry,
    int num_alloc
) 

function serial_get_nth_value

static int serial_get_nth_value (
    DB_VALUE * inc_val,
    DB_VALUE * cur_val,
    DB_VALUE * min_val,
    DB_VALUE * max_val,
    DB_VALUE * cyclic,
    int nth,
    DB_VALUE * result_val
) 

function serial_load_attribute_info_of_db_serial

static int serial_load_attribute_info_of_db_serial (
    THREAD_ENTRY * thread_p
) 

function serial_set_cache_entry

static void serial_set_cache_entry (
    SERIAL_CACHE_ENTRY * entry,
    DB_VALUE * inc_val,
    DB_VALUE * cur_val,
    DB_VALUE * min_val,
    DB_VALUE * max_val,
    DB_VALUE * started,
    DB_VALUE * cyclic,
    DB_VALUE * last_val,
    int cached_num
) 

function serial_update_cur_val_of_serial

static int serial_update_cur_val_of_serial (
    THREAD_ENTRY * thread_p,
    SERIAL_CACHE_ENTRY * entry,
    int num_alloc
) 

function serial_update_serial_object

static int serial_update_serial_object (
    THREAD_ENTRY * thread_p,
    PAGE_PTR pgptr,
    RECDES * recdesc,
    HEAP_CACHE_ATTRINFO * attr_info,
    const  OID * serial_class_oidp,
    const  OID * serial_oidp,
    DB_VALUE * key_val
) 

function xserial_get_current_value_internal

static int xserial_get_current_value_internal (
    THREAD_ENTRY * thread_p,
    DB_VALUE * result_num,
    const  OID * serial_oidp
) 

function xserial_get_next_value_internal

static int xserial_get_next_value_internal (
    THREAD_ENTRY * thread_p,
    DB_VALUE * result_num,
    const  OID * serial_oidp,
    int num_alloc
) 

Macro Definition Documentation

define NCACHE_OBJECTS

#define NCACHE_OBJECTS `100`

define NOT_FOUND

#define NOT_FOUND `-1`


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