CUBRID Engine  latest
partition_sr.h File Reference
#include "heap_file.h"
#include "thread_compat.hpp"
Include dependency graph for partition_sr.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  pruning_scan_cache
 
struct  scancache_list
 
struct  pruning_context
 

Namespaces

 cubquery
 

Typedefs

using HIERARCHY_AGGREGATE_HELPER = cubquery::hierarchy_aggregate_helper
 
typedef struct pruning_scan_cache PRUNING_SCAN_CACHE
 
typedef struct scancache_list SCANCACHE_LIST
 
typedef struct pruning_context PRUNING_CONTEXT
 

Functions

void partition_init_pruning_context (PRUNING_CONTEXT *pinfo)
 
int partition_load_pruning_context (THREAD_ENTRY *thread_p, const OID *class_oid, int pruning_type, PRUNING_CONTEXT *pinfo)
 
void partition_clear_pruning_context (PRUNING_CONTEXT *pinfo)
 
int partition_cache_init (THREAD_ENTRY *thread_p)
 
void partition_cache_finalize (THREAD_ENTRY *thread_p)
 
void partition_decache_class (THREAD_ENTRY *thread_p, const OID *class_oid)
 
PRUNING_SCAN_CACHEpartition_get_scancache (PRUNING_CONTEXT *pcontext, const OID *partition_oid)
 
PRUNING_SCAN_CACHEpartition_new_scancache (PRUNING_CONTEXT *pcontext)
 
int partition_prune_spec (THREAD_ENTRY *thread_p, val_descr *vd, access_spec_node *access_spec)
 
int partition_prune_insert (THREAD_ENTRY *thread_p, const OID *class_oid, RECDES *recdes, HEAP_SCANCACHE *scan_cache, PRUNING_CONTEXT *pcontext, int op_type, OID *pruned_class_oid, HFID *pruned_hfid, OID *superclass_oid)
 
int partition_prune_update (THREAD_ENTRY *thread_p, const OID *class_oid, RECDES *recdes, PRUNING_CONTEXT *pcontext, int pruning_type, OID *pruned_class_oid, HFID *pruned_hfid, OID *superclass_oid)
 
int partition_prune_unique_btid (PRUNING_CONTEXT *pcontext, DB_VALUE *key, OID *class_oid, HFID *class_hfid, BTID *btid)
 
int partition_get_partition_oids (THREAD_ENTRY *thread_p, const OID *class_oid, OID **partition_oids, int *count)
 
int partition_load_aggregate_helper (PRUNING_CONTEXT *pcontext, access_spec_node *spec, int pruned_count, BTID *root_btid, HIERARCHY_AGGREGATE_HELPER *helper)
 
int partition_find_root_class_oid (THREAD_ENTRY *thread_p, const OID *class_oid, OID *super_oid)
 
int partition_prune_partition_index (PRUNING_CONTEXT *pcontext, DB_VALUE *key, OID *class_oid, BTID *btid, int *position)
 

Typedef Documentation

Definition at line 66 of file partition_sr.h.

Definition at line 49 of file partition_sr.h.

Definition at line 59 of file partition_sr.h.

Function Documentation

void partition_cache_finalize ( THREAD_ENTRY thread_p)
int partition_cache_init ( THREAD_ENTRY thread_p)
void partition_decache_class ( THREAD_ENTRY thread_p,
const OID class_oid 
)

Definition at line 775 of file partition.c.

References csect_enter, csect_exit, CSECT_PARTITION_CACHE, INF_WAIT, mht_rem(), NO_ERROR, NULL, partition_free_cache_entry_kv(), and PARTITION_IS_CACHE_INITIALIZED.

Referenced by log_cleanup_modified_class().

Here is the caller graph for this function:

int partition_find_root_class_oid ( THREAD_ENTRY thread_p,
const OID class_oid,
OID super_oid 
)

Definition at line 2199 of file partition.c.

References ASSERT_ERROR, COPY_OID, error(), free_and_init, heap_get_class_supers(), NO_ERROR, NULL, and OID_SET_NULL.

Referenced by partition_load_pruning_context(), partition_prune_update(), and qexec_evaluate_aggregates_optimize().

Here is the caller graph for this function:

PRUNING_SCAN_CACHE* partition_get_scancache ( PRUNING_CONTEXT pcontext,
const OID partition_oid 
)
int partition_load_pruning_context ( THREAD_ENTRY thread_p,
const OID class_oid,
int  pruning_type,
PRUNING_CONTEXT pinfo 
)