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
Public Types
Public Attributes
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
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
variable 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
The documentation for this class was generated from the following file cubrid/src/query/serial.c