Skip to content

File work_space.h

FileList > cubrid > src > object > work_space.h

Go to the source code of this file

  • #include <stdio.h>
  • #include "oid.h"
  • #include "storage_common.h"
  • #include "quick_fit.h"
  • #include "locator.h"
  • #include "dbtype_def.h"

Classes

Type Name
struct db_object
struct vid_info
struct ws_memoid
struct ws_mop_table_entry
struct ws_object_header
class ws_repl
struct ws_repl_flush_err
struct ws_repl_list
struct ws_repl_obj
struct ws_statistics
struct ws_value_list

Public Types

Type Name
typedef void *(* LCOPIER
typedef void(* LFREEER
typedef int(* LTOTALER
typedef int(* MAPFUNC
typedef char * MOBJ
typedef struct ws_memoid * MOID
typedef int(* MOPFILTER
typedef DB_C_INT(* NLSEARCHER
typedef struct vid_info VID_INFO
typedef enum vid_info_flag VID_INFO_FLAG
typedef union vid_oid VID_OID
typedef enum ws_find_mop_status WS_FIND_MOP_STATUS
typedef enum ws_map_status WS_MAP_STATUS
typedef struct ws_memoid WS_MEMOID
typedef struct ws_mop_table_entry WS_MOP_TABLE_ENTRY
typedef struct ws_object_header WS_OBJECT_HEADER
typedef struct ws_repl_flush_err WS_REPL_FLUSH_ERR
typedef struct ws_repl_list WS_REPL_LIST
typedef struct ws_repl_obj WS_REPL_OBJ
typedef struct ws_statistics WS_STATISTICS
typedef struct ws_value_list WS_VALUE_LIST
enum vid_info_flag
union vid_oid
enum ws_find_mop_status
enum ws_map_status

Public Attributes

Type Name
MOP ws_Commit_mops
int ws_Error_ignore_count
int ws_Error_ignore_list
WS_MOP_TABLE_ENTRY * ws_Mop_table
unsigned int ws_Mop_table_size
int ws_Num_dirty_mop
DB_OBJLIST * ws_Resident_classes
WS_STATISTICS ws_Stats

Public Functions

Type Name
int ml_add (DB_OBJLIST ** list, MOP mop, int * added)
int ml_append (DB_OBJLIST ** list, MOP mop, int * added)
DB_OBJLIST * ml_copy (DB_OBJLIST * list)
int ml_ext_add (DB_OBJLIST ** list, MOP mop, int * added)
DB_OBJLIST * ml_ext_alloc_link (void)
DB_OBJLIST * ml_ext_copy (DB_OBJLIST * list)
void ml_ext_free (DB_OBJLIST * list)
void ml_ext_free_link (DB_OBJLIST * list)
void ml_filter (DB_OBJLIST ** list, MOPFILTER filter, void * args)
int ml_find (DB_OBJLIST * list, MOP mop)
void ml_free (DB_OBJLIST * list)
int ml_remove (DB_OBJLIST ** list, MOP mop)
int ml_size (DB_OBJLIST * list)
int nlist_add (DB_NAMELIST ** list, const char * name, NLSEARCHER fcn, int * added)
int nlist_append (DB_NAMELIST ** list, const char * name, NLSEARCHER fcn, int * added)
DB_NAMELIST * nlist_copy (DB_NAMELIST * list)
DB_NAMELIST * nlist_filter (DB_NAMELIST ** root, const char * name, NLSEARCHER fcn)
DB_NAMELIST * nlist_find (DB_NAMELIST * list, const char * name, NLSEARCHER fcn)
int nlist_find_or_append (DB_NAMELIST ** list, const char * name, NLSEARCHER fcn, int * position)
void nlist_free (DB_NAMELIST * list)
DB_NAMELIST * nlist_remove (DB_NAMELIST ** list, const char * name, NLSEARCHER fcn)
void ws_abort_mops (bool only_unpinned)
void ws_abort_transaction (void)
void ws_add_classname (MOBJ classobj, MOP classmop, const char * cl_name)
int ws_add_label_value_to_mop (MOP mop, DB_VALUE * val)
void ws_area_final (void)
int ws_area_init (void)
void ws_cache (MOBJ obj, MOP mop, MOP class_mop)
MOP ws_cache_with_oid (MOBJ obj, OID * oid, MOP class_mop)
int ws_chn (MOBJ obj)
int ws_class_has_cached_objects (MOP class_mop)
void ws_class_has_object_dependencies (MOP mop)
MOP ws_class_mop (MOP mop)
void ws_clean (MOP op)
void ws_clean_label_value_list (MOP mop)
void ws_clear (void)
void ws_clear_all_hints (bool retain_lock)
void ws_clear_hints (MOP obj, bool leave_pinned)
char * ws_copy_string (const char * str)
void ws_cull_mops (void)
void ws_decache (MOP mop)
void ws_decache_all_instances (MOP classmop)
void ws_decache_allxlockmops_but_norealclasses (void)
void ws_dirty (MOP op)
void ws_disconnect_deleted_instances (MOP class_mop)
void ws_drop_classname (MOBJ classobj)
void ws_dump (FILE * fpp)
void ws_dump_mops (void)
void ws_filter_dirty (void)
void ws_final (void)
int ws_find (MOP mop, MOBJ * obj)
MOP ws_find_class (const char * name)
void ws_free_string (const char * str)
void ws_free_temp_mop (MOP op)
LOCK ws_get_lock (MOP mop)
unsigned int ws_get_mvcc_snapshot_version (void)
int ws_has_dirty_objects (MOP op, int * isvirt)
bool ws_has_updated (void)
int ws_hide_new_old_trigger_obj (MOP op)
OID * ws_identifier (MOP mop)
OID * ws_identifier_with_check (MOP mop, const bool check_non_referable)
void ws_increment_mvcc_snapshot_version (void)
int ws_init (void)
void ws_intern_instances (MOP class_mop)
int ws_is_deleted (MOP mop)
int ws_is_dirty (MOP mop)
bool ws_is_mop_fetched_with_current_snapshot (MOP mop)
bool ws_is_same_object (MOP mop1, MOP mop2)
bool ws_is_trigger_involved ()
DB_VALUE * ws_keys (MOP vid, unsigned int * flags)
void ws_list_append (DB_LIST ** list, DB_LIST * element)
DB_LIST * ws_list_copy (DB_LIST * list, LCOPIER copier, LFREEER freeer)
void ws_list_free (DB_LIST * list, LFREEER function)
int ws_list_length (DB_LIST * list)
DB_LIST * ws_list_nconc (DB_LIST * list1, DB_LIST * list2)
int ws_list_remove (DB_LIST ** list, DB_LIST * element)
int ws_list_total (DB_LIST * list, LTOTALER function)
MOP ws_make_temp_mop (void)
int ws_map (MAPFUNC function, void * args)
int ws_map_class (MOP class_op, MAPFUNC function, void * args)
int ws_map_class_dirty (MOP class_op, MAPFUNC function, void * args)
int ws_map_dirty (MAPFUNC function, void * args)
void ws_mark_deleted (MOP mop)
void ws_mark_instances_deleted (MOP class_op)
MOP ws_mop (const OID * oid, MOP class_mop)
int ws_mop_compare (MOP mop1, MOP mop2)
MOP ws_mop_if_exists (OID * oid)
void ws_move_label_value_list (MOP dest_mop, MOP src_mop)
bool ws_need_flush (void)
MOP ws_new_mop (OID * oid, MOP class_mop)
OID * ws_oid (MOP mop)
int ws_pin (MOP mop, int pin)
void ws_pin_instance_and_class (MOP obj, int * opin, int * cpin)
bool ws_rehash_vmop (MOP mop, MOBJ class_obj, DB_VALUE * newkey)
void ws_release_instance (MOP class_mop)
void ws_release_user_instance (MOP mop)
void ws_remove_label_value_from_mop (MOP mop, DB_VALUE * val)
void ws_remove_resident_class (MOP class_op)
void ws_reset_authorization_cache (void)
void ws_restore_pin (MOP obj, int opin, int cpin)
void ws_set_class (MOP inst, MOP class_mop)
void ws_set_deleted (MOP mop)
int ws_set_ignore_error_list_for_mflush (int error_count, int * error_list)
void ws_set_lock (MOP mop, LOCK lock)
void ws_set_mop_fetched_with_current_snapshot (MOP mop)
void ws_unhide_new_old_trigger_obj (MOP op)
void ws_update_oid (MOP mop, OID * newoid)
int ws_update_oid_and_class (MOP mop, OID * new_oid, OID * new_class_oid)
MOP ws_vmop (MOP class_mop, int flags, DB_VALUE * keys)

Macros

Type Name
define IS_CLASS_MOP (mop) (((mop)-&gt;class\_mop == [**sm\_Root\_class\_mop**](schema__manager_8c.md#variable-sm_root_class_mop)) ? 1 : 0)
define IS_ROOT_MOP (mop) (((mop) == [**sm\_Root\_class\_mop**](schema__manager_8c.md#variable-sm_root_class_mop)) ? 1 : 0)
define NLIST_FIND (lst, name) [**nlist\_find**](work__space_8c.md#function-nlist_find) (([**DB\_NAMELIST**](dbtype__def_8h.md#typedef-db_namelist) \*) ([**lst**](broker__monitor_8c.md#function-timeout)), name, [**NULL**](freelistheap_8h.md#define-null))
define WS_CHN (obj) ((([**WS\_OBJECT\_HEADER**](work__space_8h.md#typedef-ws_object_header) \*) (obj))-&gt;chn)
define WS_CLASS_MOP (mop) ((mop)-&gt;class\_mop)
define WS_GET_LOCK (mop) ((mop)-&gt;lock)
define WS_ISDIRTY (mop) ([**ws\_is\_dirty**](work__space_8c.md#function-ws_is_dirty) (mop))
define WS_ISPINNED (mop) ((mop)-&gt;pinned)
define WS_ISVID (mop) ((mop)-&gt;is\_vid)
define WS_IS_DELETED (mop) ([**ws\_is\_deleted**](work__space_8c.md#function-ws_is_deleted) (mop))
define WS_IS_TRIGGER_INVOLVED (mop) ((mop)-&gt;trigger\_involved)
define WS_LIST_APPEND (lst, element) [**ws\_list\_append**](work__space_8c.md#function-ws_list_append) (([**DB\_LIST**](dbtype__def_8h.md#typedef-db_list) \*\*) ([**lst**](broker__monitor_8c.md#function-timeout)), ([**DB\_LIST**](dbtype__def_8h.md#typedef-db_list) \*) element)
define WS_LIST_COPY (lst, copier) [**ws\_list\_copy**](work__space_8c.md#function-ws_list_copy) (([**DB\_LIST**](dbtype__def_8h.md#typedef-db_list) \*) ([**lst**](broker__monitor_8c.md#function-timeout)), [**copier**](broker__monitor_8c.md#function-timeout), [**NULL**](freelistheap_8h.md#define-null))
define WS_LIST_FREE (lst, func) [**ws\_list\_free**](work__space_8c.md#function-ws_list_free) (([**DB\_LIST**](dbtype__def_8h.md#typedef-db_list) \*) ([**lst**](broker__monitor_8c.md#function-timeout)), ([**LFREEER**](work__space_8h.md#typedef-lfreeer)) func)
define WS_LIST_LENGTH (lst) [**ws\_list\_length**](work__space_8c.md#function-ws_list_length) (([**DB\_LIST**](dbtype__def_8h.md#typedef-db_list) \*) ([**lst**](broker__monitor_8c.md#function-timeout)))
define WS_LIST_NCONC (lst1, lst2) [**ws\_list\_nconc**](work__space_8c.md#function-ws_list_nconc) (([**DB\_LIST**](dbtype__def_8h.md#typedef-db_list) \*) ([**lst1**](broker__monitor_8c.md#function-timeout)), ([**DB\_LIST**](dbtype__def_8h.md#typedef-db_list) \*) [**lst2**](broker__monitor_8c.md#function-timeout))
define WS_LIST_REMOVE (lst, element) [**ws\_list\_remove**](work__space_8c.md#function-ws_list_remove) (([**DB\_LIST**](dbtype__def_8h.md#typedef-db_list) \*\*) ([**lst**](broker__monitor_8c.md#function-timeout)), ([**DB\_LIST**](dbtype__def_8h.md#typedef-db_list) \*) element)
define WS_MOP_COMPOSITION_FETCH_BIT 0x80 /\* 1000 0000 \*/
define WS_MOP_GET_COMPOSITION_FETCH (mop) ((mop)-&gt;composition\_fetch & [**WS\_MOP\_COMPOSITION\_FETCH\_BIT**](work__space_8h.md#define-ws_mop_composition_fetch_bit))
define WS_MOP_GET_PRUNE_LEVEL (mop) ((mop)-&gt;composition\_fetch & ~[**WS\_MOP\_COMPOSITION\_FETCH\_BIT**](work__space_8h.md#define-ws_mop_composition_fetch_bit))
define WS_MOP_IS_NULL (mop) (((mop == [**NULL**](freelistheap_8h.md#define-null)) \|\| [**WS\_IS\_DELETED**](work__space_8h.md#define-ws_is_deleted) (mop) \|\| ([**OID\_ISNULL**](oid_8h.md#define-oid_isnull) (&(mop)-&gt;oid\_info.oid) && !(mop)-&gt;is\_vid)) ? 1 : 0)
define WS_MOP_SET_COMPOSITION_FETCH (mop) /* multi line expression */
define WS_MOP_SET_PRUNE_LEVEL (mop, value) /* multi line expression */
define WS_OID (mop) ([**WS\_ISVID**](work__space_8h.md#define-ws_isvid) (mop) ? ([**OID**](dbtype__def_8h.md#typedef-oid) \*) (&[**oid\_Null\_oid**](oid_8c.md#variable-oid_null_oid)) : &(mop)-&gt;oid\_info.oid)
define WS_PUT_COMMIT_MOP (mop) /* multi line expression */
define WS_REAL_OID (mop) (&(mop)-&gt;oid\_info.oid)
define WS_RESET_DIRTY (mop) /* multi line expression */
define WS_SET_DELETED (mop) ([**ws\_set\_deleted**](work__space_8c.md#function-ws_set_deleted) (mop))
define WS_SET_DIRTY (mop) /* multi line expression */
define WS_SET_LOCK (mop, lock) /* multi line expression */
define WS_SET_NO_OBJECTS (mop) /* multi line expression */
define WS_SET_TRIGGER_INVOLVED (mop) /* multi line expression */
define WS_VID_INFO (mop) ((mop)-&gt;oid\_info.vid\_info)
define ml_free_and_init (list) /* multi line expression */
define ws_free_string_and_init (str) /* multi line expression */
define ws_list_free_and_init (list, function) /* multi line expression */

Public Types Documentation

typedef LCOPIER

typedef void *(* LCOPIER) (void *);

typedef LFREEER

typedef void(* LFREEER) (void *);

typedef LTOTALER

typedef int(* LTOTALER) (void *);

typedef MAPFUNC

typedef int(* MAPFUNC) (MOP mop, void *args);

typedef MOBJ

typedef char* MOBJ;

typedef MOID

typedef struct ws_memoid* MOID;

typedef MOPFILTER

typedef int(* MOPFILTER) (MOP op, void *args);

typedef NLSEARCHER

typedef DB_C_INT(* NLSEARCHER) (const void *, const void *);

typedef VID_INFO

typedef struct vid_info VID_INFO;

typedef VID_INFO_FLAG

typedef enum vid_info_flag VID_INFO_FLAG;

typedef VID_OID

typedef union vid_oid VID_OID;

typedef WS_FIND_MOP_STATUS

typedef enum ws_find_mop_status WS_FIND_MOP_STATUS;

typedef WS_MAP_STATUS

typedef enum ws_map_status WS_MAP_STATUS;

typedef WS_MEMOID

typedef struct ws_memoid WS_MEMOID;

typedef WS_MOP_TABLE_ENTRY

typedef struct ws_mop_table_entry WS_MOP_TABLE_ENTRY;

typedef WS_OBJECT_HEADER

typedef struct ws_object_header WS_OBJECT_HEADER;

typedef WS_REPL_FLUSH_ERR

typedef struct ws_repl_flush_err WS_REPL_FLUSH_ERR;

typedef WS_REPL_LIST

typedef struct ws_repl_list WS_REPL_LIST;

typedef WS_REPL_OBJ

typedef struct ws_repl_obj WS_REPL_OBJ;

typedef WS_STATISTICS

typedef struct ws_statistics WS_STATISTICS;

typedef WS_VALUE_LIST

typedef struct ws_value_list WS_VALUE_LIST;

enum vid_info_flag

enum vid_info_flag {
    VID_BASE = 1,
    VID_UPDATABLE = 2,
    VID_NEW = 4,
    VID_INSERTING = 8
};

union vid_oid



enum ws_find_mop_status

enum ws_find_mop_status {
    WS_FIND_MOP_DELETED = 0,
    WS_FIND_MOP_NOTDELETED = 1
};

enum ws_map_status

enum ws_map_status {
    WS_MAP_CONTINUE = 0,
    WS_MAP_FAIL = 1,
    WS_MAP_STOP = 2,
    WS_MAP_SUCCESS = 3
};

Public Attributes Documentation

variable ws_Commit_mops

MOP ws_Commit_mops;

variable ws_Error_ignore_count

int ws_Error_ignore_count;

variable ws_Error_ignore_list

int ws_Error_ignore_list[-ER_LAST_ERROR];

variable ws_Mop_table

WS_MOP_TABLE_ENTRY* ws_Mop_table;

variable ws_Mop_table_size

unsigned int ws_Mop_table_size;

variable ws_Num_dirty_mop

int ws_Num_dirty_mop;

variable ws_Resident_classes

DB_OBJLIST* ws_Resident_classes;

variable ws_Stats

WS_STATISTICS ws_Stats;

Public Functions Documentation

function ml_add

int ml_add (
    DB_OBJLIST ** list,
    MOP mop,
    int * added
) 

function ml_append

int ml_append (
    DB_OBJLIST ** list,
    MOP mop,
    int * added
) 

function ml_copy

DB_OBJLIST * ml_copy (
    DB_OBJLIST * list
) 

function ml_ext_add

int ml_ext_add (
    DB_OBJLIST ** list,
    MOP mop,
    int * added
) 

DB_OBJLIST * ml_ext_alloc_link (
    void
) 

function ml_ext_copy

DB_OBJLIST * ml_ext_copy (
    DB_OBJLIST * list
) 

function ml_ext_free

void ml_ext_free (
    DB_OBJLIST * list
) 

void ml_ext_free_link (
    DB_OBJLIST * list
) 

function ml_filter

void ml_filter (
    DB_OBJLIST ** list,
    MOPFILTER filter,
    void * args
) 

function ml_find

int ml_find (
    DB_OBJLIST * list,
    MOP mop
) 

function ml_free

void ml_free (
    DB_OBJLIST * list
) 

function ml_remove

int ml_remove (
    DB_OBJLIST ** list,
    MOP mop
) 

function ml_size

int ml_size (
    DB_OBJLIST * list
) 

function nlist_add

int nlist_add (
    DB_NAMELIST ** list,
    const  char * name,
    NLSEARCHER fcn,
    int * added
) 

function nlist_append

int nlist_append (
    DB_NAMELIST ** list,
    const  char * name,
    NLSEARCHER fcn,
    int * added
) 

function nlist_copy

DB_NAMELIST * nlist_copy (
    DB_NAMELIST * list
) 

function nlist_filter

DB_NAMELIST * nlist_filter (
    DB_NAMELIST ** root,
    const  char * name,
    NLSEARCHER fcn
) 

function nlist_find

DB_NAMELIST * nlist_find (
    DB_NAMELIST * list,
    const  char * name,
    NLSEARCHER fcn
) 

function nlist_find_or_append

int nlist_find_or_append (
    DB_NAMELIST ** list,
    const  char * name,
    NLSEARCHER fcn,
    int * position
) 

function nlist_free

void nlist_free (
    DB_NAMELIST * list
) 

function nlist_remove

DB_NAMELIST * nlist_remove (
    DB_NAMELIST ** list,
    const  char * name,
    NLSEARCHER fcn
) 

function ws_abort_mops

void ws_abort_mops (
    bool only_unpinned
) 

function ws_abort_transaction

void ws_abort_transaction (
    void
) 

function ws_add_classname

void ws_add_classname (
    MOBJ classobj,
    MOP classmop,
    const  char * cl_name
) 

function ws_add_label_value_to_mop

int ws_add_label_value_to_mop (
    MOP mop,
    DB_VALUE * val
) 

function ws_area_final

void ws_area_final (
    void
) 

function ws_area_init

int ws_area_init (
    void
) 

function ws_cache

void ws_cache (
    MOBJ obj,
    MOP mop,
    MOP class_mop
) 

function ws_cache_with_oid

MOP ws_cache_with_oid (
    MOBJ obj,
    OID * oid,
    MOP class_mop
) 

function ws_chn

int ws_chn (
    MOBJ obj
) 

function ws_class_has_cached_objects

int ws_class_has_cached_objects (
    MOP class_mop
) 

function ws_class_has_object_dependencies

void ws_class_has_object_dependencies (
    MOP mop
) 

function ws_class_mop

MOP ws_class_mop (
    MOP mop
) 

function ws_clean

void ws_clean (
    MOP op
) 

function ws_clean_label_value_list

void ws_clean_label_value_list (
    MOP mop
) 

function ws_clear

void ws_clear (
    void
) 

function ws_clear_all_hints

void ws_clear_all_hints (
    bool retain_lock
) 

function ws_clear_hints

void ws_clear_hints (
    MOP obj,
    bool leave_pinned
) 

function ws_copy_string

char * ws_copy_string (
    const  char * str
) 

function ws_cull_mops

void ws_cull_mops (
    void
) 

function ws_decache

void ws_decache (
    MOP mop
) 

function ws_decache_all_instances

void ws_decache_all_instances (
    MOP classmop
) 

function ws_decache_allxlockmops_but_norealclasses

void ws_decache_allxlockmops_but_norealclasses (
    void
) 

function ws_dirty

void ws_dirty (
    MOP op
) 

function ws_disconnect_deleted_instances

void ws_disconnect_deleted_instances (
    MOP class_mop
) 

function ws_drop_classname

void ws_drop_classname (
    MOBJ classobj
) 

function ws_dump

void ws_dump (
    FILE * fpp
) 

function ws_dump_mops

void ws_dump_mops (
    void
) 

function ws_filter_dirty

void ws_filter_dirty (
    void
) 

function ws_final

void ws_final (
    void
) 

function ws_find

int ws_find (
    MOP mop,
    MOBJ * obj
) 

function ws_find_class

MOP ws_find_class (
    const  char * name
) 

function ws_free_string

void ws_free_string (
    const  char * str
) 

function ws_free_temp_mop

void ws_free_temp_mop (
    MOP op
) 

function ws_get_lock

LOCK ws_get_lock (
    MOP mop
) 

function ws_get_mvcc_snapshot_version

unsigned  int ws_get_mvcc_snapshot_version (
    void
) 

function ws_has_dirty_objects

int ws_has_dirty_objects (
    MOP op,
    int * isvirt
) 

function ws_has_updated

bool ws_has_updated (
    void
) 

function ws_hide_new_old_trigger_obj

int ws_hide_new_old_trigger_obj (
    MOP op
) 

function ws_identifier

OID * ws_identifier (
    MOP mop
) 

function ws_identifier_with_check

OID * ws_identifier_with_check (
    MOP mop,
    const  bool check_non_referable
) 

function ws_increment_mvcc_snapshot_version

void ws_increment_mvcc_snapshot_version (
    void
) 

function ws_init

int ws_init (
    void
) 

function ws_intern_instances

void ws_intern_instances (
    MOP class_mop
) 

function ws_is_deleted

int ws_is_deleted (
    MOP mop
) 

function ws_is_dirty

int ws_is_dirty (
    MOP mop
) 

function ws_is_mop_fetched_with_current_snapshot

bool ws_is_mop_fetched_with_current_snapshot (
    MOP mop
) 

function ws_is_same_object

bool ws_is_same_object (
    MOP mop1,
    MOP mop2
) 

function ws_is_trigger_involved

bool ws_is_trigger_involved () 

function ws_keys

DB_VALUE * ws_keys (
    MOP vid,
    unsigned  int * flags
) 

function ws_list_append

void ws_list_append (
    DB_LIST ** list,
    DB_LIST * element
) 

function ws_list_copy

DB_LIST * ws_list_copy (
    DB_LIST * list,
    LCOPIER copier,
    LFREEER freeer
) 

function ws_list_free

void ws_list_free (
    DB_LIST * list,
    LFREEER function
) 

function ws_list_length

int ws_list_length (
    DB_LIST * list
) 

function ws_list_nconc

DB_LIST * ws_list_nconc (
    DB_LIST * list1,
    DB_LIST * list2
) 

function ws_list_remove

int ws_list_remove (
    DB_LIST ** list,
    DB_LIST * element
) 

function ws_list_total

int ws_list_total (
    DB_LIST * list,
    LTOTALER function
) 

function ws_make_temp_mop

MOP ws_make_temp_mop (
    void
) 

function ws_map

int ws_map (
    MAPFUNC function,
    void * args
) 

function ws_map_class

int ws_map_class (
    MOP class_op,
    MAPFUNC function,
    void * args
) 

function ws_map_class_dirty

int ws_map_class_dirty (
    MOP class_op,
    MAPFUNC function,
    void * args
) 

function ws_map_dirty

int ws_map_dirty (
    MAPFUNC function,
    void * args
) 

function ws_mark_deleted

void ws_mark_deleted (
    MOP mop
) 

function ws_mark_instances_deleted

void ws_mark_instances_deleted (
    MOP class_op
) 

function ws_mop

MOP ws_mop (
    const  OID * oid,
    MOP class_mop
) 

function ws_mop_compare

int ws_mop_compare (
    MOP mop1,
    MOP mop2
) 

function ws_mop_if_exists

MOP ws_mop_if_exists (
    OID * oid
) 

function ws_move_label_value_list

void ws_move_label_value_list (
    MOP dest_mop,
    MOP src_mop
) 

function ws_need_flush

bool ws_need_flush (
    void
) 

function ws_new_mop

MOP ws_new_mop (
    OID * oid,
    MOP class_mop
) 

function ws_oid

OID * ws_oid (
    MOP mop
) 

function ws_pin

int ws_pin (
    MOP mop,
    int pin
) 

function ws_pin_instance_and_class

void ws_pin_instance_and_class (
    MOP obj,
    int * opin,
    int * cpin
) 

function ws_rehash_vmop

bool ws_rehash_vmop (
    MOP mop,
    MOBJ class_obj,
    DB_VALUE * newkey
) 

function ws_release_instance

void ws_release_instance (
    MOP class_mop
) 

function ws_release_user_instance

void ws_release_user_instance (
    MOP mop
) 

function ws_remove_label_value_from_mop

void ws_remove_label_value_from_mop (
    MOP mop,
    DB_VALUE * val
) 

function ws_remove_resident_class

void ws_remove_resident_class (
    MOP class_op
) 

function ws_reset_authorization_cache

void ws_reset_authorization_cache (
    void
) 

function ws_restore_pin

void ws_restore_pin (
    MOP obj,
    int opin,
    int cpin
) 

function ws_set_class

void ws_set_class (
    MOP inst,
    MOP class_mop
) 

function ws_set_deleted

void ws_set_deleted (
    MOP mop
) 

function ws_set_ignore_error_list_for_mflush

int ws_set_ignore_error_list_for_mflush (
    int error_count,
    int * error_list
) 

function ws_set_lock

void ws_set_lock (
    MOP mop,
    LOCK lock
) 

function ws_set_mop_fetched_with_current_snapshot

void ws_set_mop_fetched_with_current_snapshot (
    MOP mop
) 

function ws_unhide_new_old_trigger_obj

void ws_unhide_new_old_trigger_obj (
    MOP op
) 

function ws_update_oid

void ws_update_oid (
    MOP mop,
    OID * newoid
) 

function ws_update_oid_and_class

int ws_update_oid_and_class (
    MOP mop,
    OID * new_oid,
    OID * new_class_oid
) 

function ws_vmop

MOP ws_vmop (
    MOP class_mop,
    int flags,
    DB_VALUE * keys
) 

Macro Definition Documentation

define IS_CLASS_MOP

#define IS_CLASS_MOP (
    mop
) `(((mop)->class_mop == sm_Root_class_mop ) ? 1 : 0)`

define IS_ROOT_MOP

#define IS_ROOT_MOP (
    mop
) `(((mop) == sm_Root_class_mop ) ? 1 : 0)`

define NLIST_FIND

#define NLIST_FIND (
    lst,
    name
) `nlist_find (( DB_NAMELIST *) ( lst ), name, NULL )`

define WS_CHN

#define WS_CHN (
    obj
) `((( WS_OBJECT_HEADER *) (obj))->chn)`

define WS_CLASS_MOP

#define WS_CLASS_MOP (
    mop
) `((mop)->class_mop)`

define WS_GET_LOCK

#define WS_GET_LOCK (
    mop
) `((mop)->lock)`

define WS_ISDIRTY

#define WS_ISDIRTY (
    mop
) `( ws_is_dirty (mop))`

define WS_ISPINNED

#define WS_ISPINNED (
    mop
) `((mop)->pinned)`

define WS_ISVID

#define WS_ISVID (
    mop
) `((mop)->is_vid)`

define WS_IS_DELETED

#define WS_IS_DELETED (
    mop
) `( ws_is_deleted (mop))`

define WS_IS_TRIGGER_INVOLVED

#define WS_IS_TRIGGER_INVOLVED (
    mop
) `((mop)->trigger_involved)`

define WS_LIST_APPEND

#define WS_LIST_APPEND (
    lst,
    element
) `ws_list_append (( DB_LIST **) ( lst ), ( DB_LIST *) element)`

define WS_LIST_COPY

#define WS_LIST_COPY (
    lst,
    copier
) `ws_list_copy (( DB_LIST *) ( lst ), copier , NULL )`

define WS_LIST_FREE

#define WS_LIST_FREE (
    lst,
    func
) `ws_list_free (( DB_LIST *) ( lst ), ( LFREEER ) func)`

define WS_LIST_LENGTH

#define WS_LIST_LENGTH (
    lst
) `ws_list_length (( DB_LIST *) ( lst ))`

define WS_LIST_NCONC

#define WS_LIST_NCONC (
    lst1,
    lst2
) `ws_list_nconc (( DB_LIST *) ( lst1 ), ( DB_LIST *) lst2 )`

define WS_LIST_REMOVE

#define WS_LIST_REMOVE (
    lst,
    element
) `ws_list_remove (( DB_LIST **) ( lst ), ( DB_LIST *) element)`

define WS_MOP_COMPOSITION_FETCH_BIT

#define WS_MOP_COMPOSITION_FETCH_BIT `0x80  /* 1000 0000 */`

define WS_MOP_GET_COMPOSITION_FETCH

#define WS_MOP_GET_COMPOSITION_FETCH (
    mop
) `((mop)->composition_fetch & WS_MOP_COMPOSITION_FETCH_BIT )`

define WS_MOP_GET_PRUNE_LEVEL

#define WS_MOP_GET_PRUNE_LEVEL (
    mop
) `((mop)->composition_fetch & ~ WS_MOP_COMPOSITION_FETCH_BIT )`

define WS_MOP_IS_NULL

#define WS_MOP_IS_NULL (
    mop
) `(((mop == NULL ) || WS_IS_DELETED (mop) || ( OID_ISNULL (&(mop)->oid_info.oid) && !(mop)->is_vid)) ? 1 : 0)`

define WS_MOP_SET_COMPOSITION_FETCH

#define WS_MOP_SET_COMPOSITION_FETCH (
    mop
) `/* multi line expression */`

define WS_MOP_SET_PRUNE_LEVEL

#define WS_MOP_SET_PRUNE_LEVEL (
    mop,
    value
) `/* multi line expression */`

define WS_OID

#define WS_OID (
    mop
) `( WS_ISVID (mop) ? ( OID *) (& oid_Null_oid ) : &(mop)->oid_info.oid)`

define WS_PUT_COMMIT_MOP

#define WS_PUT_COMMIT_MOP (
    mop
) `/* multi line expression */`

define WS_REAL_OID

#define WS_REAL_OID (
    mop
) `(&(mop)->oid_info.oid)`

define WS_RESET_DIRTY

#define WS_RESET_DIRTY (
    mop
) `/* multi line expression */`

define WS_SET_DELETED

#define WS_SET_DELETED (
    mop
) `( ws_set_deleted (mop))`

define WS_SET_DIRTY

#define WS_SET_DIRTY (
    mop
) `/* multi line expression */`

define WS_SET_LOCK

#define WS_SET_LOCK (
    mop,
    lock
) `/* multi line expression */`

define WS_SET_NO_OBJECTS

#define WS_SET_NO_OBJECTS (
    mop
) `/* multi line expression */`

define WS_SET_TRIGGER_INVOLVED

#define WS_SET_TRIGGER_INVOLVED (
    mop
) `/* multi line expression */`

define WS_VID_INFO

#define WS_VID_INFO (
    mop
) `((mop)->oid_info.vid_info)`

define ml_free_and_init

#define ml_free_and_init (
    list
) `/* multi line expression */`

define ws_free_string_and_init

#define ws_free_string_and_init (
    str
) `/* multi line expression */`

define ws_list_free_and_init

#define ws_list_free_and_init (
    list,
    function
) `/* multi line expression */`


The documentation for this class was generated from the following file cubrid/src/object/work_space.h