24 #ifndef _SYSTEM_CATALOG_H_ 25 #define _SYSTEM_CATALOG_H_ 29 #if !defined (SERVER_MODE) && !defined (SA_MODE) 30 #error Belongs to server module 42 #define CATALOG_DIR_REPR_KEY -2 116 #if !defined (NDEBUG) 121 #if !defined (NDEBUG) 122 #define CATALOG_ACCESS_INFO_INITIALIZER \ 123 {NULL, NULL, NULL, false, false, false, false, false} 125 #define CATALOG_ACCESS_INFO_INITIALIZER \ 126 {NULL, NULL, NULL, false, false, false, false} 129 #define CLS_INFO_INITIALIZER \ 130 { HFID_INITIALIZER, 0, 0, 0, { NULL_PAGEID, NULL_SLOTID, NULL_VOLID } } 132 #define catalog_free_class_info_and_init(class_info_p) \ 135 if ((class_info_p) != NULL) \ 137 catalog_free_class_info ((class_info_p)); \ 138 (class_info_p) = NULL; \ 143 #define catalog_free_representation_and_init(repr_p) \ 146 if ((repr_p) != NULL) \ 148 catalog_free_representation ((repr_p)); \ 185 const int key_pos,
int *cardinality);
187 const int key_pos,
int *cardinality);
int catalog_reclaim_space(THREAD_ENTRY *thread_p)
int catalog_rv_update(THREAD_ENTRY *thread_p, LOG_RCV *recv)
int catalog_rv_insert_redo(THREAD_ENTRY *thread_p, LOG_RCV *recv)
int catalog_rv_ovf_page_logical_insert_undo(THREAD_ENTRY *thread_p, LOG_RCV *recv)
int catalog_add_class_info(THREAD_ENTRY *thread_p, OID *class_oid_p, CLS_INFO *class_info_p, CATALOG_ACCESS_INFO *catalog_access_info_p)
unsigned int ci_time_stamp
CLS_INFO * catalog_update_class_info(THREAD_ENTRY *thread_p, OID *class_id, CLS_INFO *cls_info, CATALOG_ACCESS_INFO *catalog_access_info_p, bool skip_logging)
void catalog_initialize(CTID *catid)
int catalog_delete(THREAD_ENTRY *thread_p, OID *classoid)
void catalog_free_class_info(CLS_INFO *class_info_p)
int catalog_add_representation(THREAD_ENTRY *thread_p, OID *class_id, REPR_ID repr_id, DISK_REPR *Disk_Repr, OID *rep_dir_p, CATALOG_ACCESS_INFO *catalog_access_info_p)
bool need_free_class_name
void catalog_finalize(void)
int catalog_rv_delete_undo(THREAD_ENTRY *thread_p, LOG_RCV *recv)
int catalog_get_dir_oid_from_cache(THREAD_ENTRY *thread_p, const OID *class_id_p, OID *dir_oid_p)
int catalog_start_access_with_dir_oid(THREAD_ENTRY *thread_p, CATALOG_ACCESS_INFO *catalog_access_info, LOCK lock_mode)
int catalog_get_representation_directory(THREAD_ENTRY *thread_p, OID *class_id, REPR_ID **reprid_set, int *repr_cnt)
int catalog_update(THREAD_ENTRY *thread_p, RECDES *record, OID *classoid)
CLS_INFO * catalog_get_class_info(THREAD_ENTRY *thread_p, OID *class_id, CATALOG_ACCESS_INFO *catalog_access_info_p)
struct disk_attribute * variable
int catalog_rv_new_page_redo(THREAD_ENTRY *thread_p, LOG_RCV *recv)
int catalog_insert(THREAD_ENTRY *thread_p, RECDES *record, OID *classoid, OID *rep_dir_p)
struct disk_attribute * fixed
static void error(const char *msg)
DISK_ISVALID catalog_check_consistency(THREAD_ENTRY *thread_p)
int catalog_get_cardinality(THREAD_ENTRY *thread_p, OID *class_oid, DISK_REPR *rep, BTID *btid, const int key_pos, int *cardinality)
void catalog_dump(THREAD_ENTRY *thread_p, FILE *fp, int dump_flg)
CTID * catalog_create(THREAD_ENTRY *thread_p, CTID *catid)
int catalog_end_access_with_dir_oid(THREAD_ENTRY *thread_p, CATALOG_ACCESS_INFO *catalog_access_info, int error)
int catalog_get_last_representation_id(THREAD_ENTRY *thread_p, OID *cls_oid, REPR_ID *repr_id)
int catalog_get_cardinality_by_name(THREAD_ENTRY *thread_p, const char *class_name, const char *index_name, const int key_pos, int *cardinality)
void catalog_free_representation(DISK_REPR *repr_p)
int catalog_drop_old_representations(THREAD_ENTRY *thread_p, OID *class_id)
int catalog_rv_insert_undo(THREAD_ENTRY *thread_p, LOG_RCV *recv)
DISK_REPR * catalog_get_representation(THREAD_ENTRY *thread_p, OID *class_id, REPR_ID repr_id, CATALOG_ACCESS_INFO *catalog_access_info_p)
int catalog_destroy(void)
int catalog_rv_delete_redo(THREAD_ENTRY *thread_p, LOG_RCV *recv)