Skip to content

File subquery_cache.h

FileList > cubrid > src > query > subquery_cache.h

Go to the source code of this file

Classes

Type Name
struct sq_cache
struct sq_key
struct sq_val

Public Types

Type Name
typedef struct sq_cache SQ_CACHE
typedef struct sq_key SQ_KEY
typedef union sq_regu_value SQ_REGU_VALUE
typedef enum sq_type SQ_TYPE
typedef struct sq_val SQ_VAL
union sq_regu_value
enum sq_type

Public Functions

Type Name
void sq_cache_destroy (THREAD_ENTRY * thread_p, SQ_CACHE * sq_cache)
int sq_cache_initialize (xasl_node * xasl)
void sq_free_key (THREAD_ENTRY * thread_p, SQ_KEY * key)
bool sq_get (THREAD_ENTRY * thread_p, SQ_KEY * key, xasl_node * xasl, REGU_VARIABLE * regu_var)
SQ_KEY * sq_make_key (THREAD_ENTRY * thread_p, xasl_node * xasl)
int sq_put (THREAD_ENTRY * thread_p, SQ_KEY * key, xasl_node * xasl, REGU_VARIABLE * result)

Macros

Type Name
define SQ_CACHE_ENABLED (xasl) (xasl)->[**sq\_cache**](structsq__cache.md)->enabled
define SQ_CACHE_EXPECTED_ENTRY_SIZE 512
define SQ_CACHE_HIT (xasl) (xasl)->[**sq\_cache**](structsq__cache.md)->stats.hit
define SQ_CACHE_HT (xasl) (xasl)->[**sq\_cache**](structsq__cache.md)->ht
define SQ_CACHE_KEY_STRUCT (xasl) (xasl)->[**sq\_cache**](structsq__cache.md)->sq\_key\_struct
define SQ_CACHE_MIN_HIT_RATIO 9 /\* [**it**](broker__monitor_8c.md#function-timeout) [**means**](broker__monitor_8c.md#function-timeout) 90% \*/
define SQ_CACHE_MISS (xasl) (xasl)->[**sq\_cache**](structsq__cache.md)->stats.miss
define SQ_CACHE_SIZE (xasl) (xasl)->[**sq\_cache**](structsq__cache.md)->size
define SQ_CACHE_SIZE_MAX (xasl) (xasl)->[**sq\_cache**](structsq__cache.md)->size\_max

Public Types Documentation

typedef SQ_CACHE

typedef struct sq_cache SQ_CACHE;

typedef SQ_KEY

typedef struct sq_key SQ_KEY;

typedef SQ_REGU_VALUE

typedef union sq_regu_value SQ_REGU_VALUE;

typedef SQ_TYPE

typedef enum sq_type SQ_TYPE;

typedef SQ_VAL

typedef struct sq_val SQ_VAL;

union sq_regu_value



enum sq_type

enum sq_type {
    SQ_TYPE_XASL = 0,
    SQ_TYPE_PRED,
    SQ_TYPE_REGU_VAR,
    SQ_TYPE_DBVAL
};

Public Functions Documentation

function sq_cache_destroy

void sq_cache_destroy (
    THREAD_ENTRY * thread_p,
    SQ_CACHE * sq_cache
) 

function sq_cache_initialize

int sq_cache_initialize (
    xasl_node * xasl
) 

function sq_free_key

void sq_free_key (
    THREAD_ENTRY * thread_p,
    SQ_KEY * key
) 

function sq_get

bool sq_get (
    THREAD_ENTRY * thread_p,
    SQ_KEY * key,
    xasl_node * xasl,
    REGU_VARIABLE * regu_var
) 

function sq_make_key

SQ_KEY * sq_make_key (
    THREAD_ENTRY * thread_p,
    xasl_node * xasl
) 

function sq_put

int sq_put (
    THREAD_ENTRY * thread_p,
    SQ_KEY * key,
    xasl_node * xasl,
    REGU_VARIABLE * result
) 

Macro Definition Documentation

define SQ_CACHE_ENABLED

#define SQ_CACHE_ENABLED (
    xasl
) `(xasl)-> sq_cache ->enabled`

define SQ_CACHE_EXPECTED_ENTRY_SIZE

#define SQ_CACHE_EXPECTED_ENTRY_SIZE `512`

define SQ_CACHE_HIT

#define SQ_CACHE_HIT (
    xasl
) `(xasl)-> sq_cache ->stats.hit`

define SQ_CACHE_HT

#define SQ_CACHE_HT (
    xasl
) `(xasl)-> sq_cache ->ht`

define SQ_CACHE_KEY_STRUCT

#define SQ_CACHE_KEY_STRUCT (
    xasl
) `(xasl)-> sq_cache ->sq_key_struct`

define SQ_CACHE_MIN_HIT_RATIO

#define SQ_CACHE_MIN_HIT_RATIO `9   /* it  means 90% */`

define SQ_CACHE_MISS

#define SQ_CACHE_MISS (
    xasl
) `(xasl)-> sq_cache ->stats.miss`

define SQ_CACHE_SIZE

#define SQ_CACHE_SIZE (
    xasl
) `(xasl)-> sq_cache ->size`

define SQ_CACHE_SIZE_MAX

#define SQ_CACHE_SIZE_MAX (
    xasl
) `(xasl)-> sq_cache ->size_max`


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