Skip to content

File shard_metadata.c

FileList > broker > shard_metadata.c

Go to the source code of this file

  • #include <stdio.h>
  • #include <stdlib.h>
  • #include <string.h>
  • #include <time.h>
  • #include <sys/types.h>
  • #include <sys/stat.h>
  • #include <assert.h>
  • #include "dbi.h"
  • #include "dlfcn.h"
  • #include "cas_common.h"
  • #include "broker_filename.h"
  • #include "broker_admin_pub.h"
  • #include "broker_util.h"
  • #include "shard_metadata.h"

Public Attributes

Type Name
FN_GET_SHARD_KEY fn_get_shard_key = [**NULL**](freelistheap_8h.md#define-null)
void * handle = [**NULL**](freelistheap_8h.md#define-null)

Public Functions

Type Name
void close_shard_key_function (void)
int load_shard_key_function (const char * library_name, const char * function_name)
T_SHARD_KEY * shard_metadata_bsearch_key (T_SHM_SHARD_KEY * shm_key_p, const char * keycolumn)
T_SHARD_KEY_RANGE * shard_metadata_bsearch_range (T_SHARD_KEY * key_p, unsigned int hash_res)
void shard_metadata_dump (FILE * fp, int shmid)
void shard_metadata_dump_internal (FILE * fp, T_SHM_PROXY * shm_proxy_p)
T_SHARD_KEY_RANGE * shard_metadata_find_shard_range (T_SHM_SHARD_KEY * shm_key_p, const char * key, unsigned int hash_res)
T_SHM_SHARD_CONN * shard_metadata_get_conn (T_SHM_PROXY * shm_proxy_p)
T_SHM_SHARD_KEY * shard_metadata_get_key (T_SHM_PROXY * shm_proxy_p)
T_SHARD_USER * shard_metadata_get_shard_user (T_SHM_SHARD_USER * shm_user_p)
T_SHARD_USER * shard_metadata_get_shard_user_from_shm (T_SHM_PROXY * shm_proxy_p)
T_SHM_SHARD_USER * shard_metadata_get_user (T_SHM_PROXY * shm_proxy_p)
int shard_metadata_initialize (T_BROKER_INFO * br_info, T_SHM_PROXY * shm_proxy_p)

Public Static Functions

Type Name
int shard_metadata_conn_comp (const void * p1, const void * p2)
void shard_metadata_dump_conn (FILE * fp, T_SHM_SHARD_CONN * shm_conn_p)
void shard_metadata_dump_key (FILE * fp, T_SHM_SHARD_KEY * shm_key_p)
void shard_metadata_dump_user (FILE * fp, T_SHM_SHARD_USER * shm_user_p)
int shard_metadata_key_range_comp (const void * p1, const void * p2)
int shard_metadata_read_conn (const char * filename, T_SHM_PROXY * shm_proxy_p)
int shard_metadata_read_key (const char * filename, T_SHM_PROXY * shm_proxy_p)
int shard_metadata_read_user (T_SHM_PROXY * shm_proxy_p, char * db_name, char * db_user, char * db_password)
void shard_metadata_sort_conn (T_SHM_SHARD_CONN * shm_conn_p)
void shard_metadata_sort_key (T_SHM_SHARD_KEY * shm_key_p)
int shard_metadata_validate (T_BROKER_INFO * br_info_p, T_SHM_PROXY * shm_proxy_p)
int shard_metadata_validate_conn (T_SHM_SHARD_CONN * shm_conn_p)
int shard_metadata_validate_key (T_SHM_SHARD_KEY * shm_key_p, T_SHM_SHARD_CONN * shm_conn_p, int modular)
int shard_metadata_validate_key_function (const char * library_name, const char * function_name)
int shard_metadata_validate_key_range_internal (T_SHARD_KEY * key_p, T_SHM_SHARD_CONN * shm_conn_p, int modular)
int shard_metadata_validate_user (T_SHM_SHARD_USER * shm_user_p)
void shard_println_1 (FILE * fp)
void shard_println_2 (FILE * fp)

Macros

Type Name
define DEFAULT_NUM_CONN 4
define DEFAULT_NUM_KEY 1
define DEFAULT_NUM_USER 1
define SHARD_METADATA_CONN_TABLE_NAME "shard\_conn"
define SHARD_METADATA_KEY_RANGE_TABLE_NAME "shard\_range"
define SHARD_METADATA_USER_TABLE_NAME "shard\_user"
define SHARD_QUERY_BUFFER_SIZE 1024

Public Attributes Documentation

variable fn_get_shard_key

FN_GET_SHARD_KEY fn_get_shard_key;

variable handle

void* handle;

Public Functions Documentation

function close_shard_key_function

void close_shard_key_function (
    void
) 

function load_shard_key_function

int load_shard_key_function (
    const  char * library_name,
    const  char * function_name
) 

function shard_metadata_bsearch_key

T_SHARD_KEY * shard_metadata_bsearch_key (
    T_SHM_SHARD_KEY * shm_key_p,
    const  char * keycolumn
) 

function shard_metadata_bsearch_range

T_SHARD_KEY_RANGE * shard_metadata_bsearch_range (
    T_SHARD_KEY * key_p,
    unsigned  int hash_res
) 

function shard_metadata_dump

void shard_metadata_dump (
    FILE * fp,
    int shmid
) 

function shard_metadata_dump_internal

void shard_metadata_dump_internal (
    FILE * fp,
    T_SHM_PROXY * shm_proxy_p
) 

function shard_metadata_find_shard_range

T_SHARD_KEY_RANGE * shard_metadata_find_shard_range (
    T_SHM_SHARD_KEY * shm_key_p,
    const  char * key,
    unsigned  int hash_res
) 

function shard_metadata_get_conn

T_SHM_SHARD_CONN * shard_metadata_get_conn (
    T_SHM_PROXY * shm_proxy_p
) 

function shard_metadata_get_key

T_SHM_SHARD_KEY * shard_metadata_get_key (
    T_SHM_PROXY * shm_proxy_p
) 

function shard_metadata_get_shard_user

T_SHARD_USER * shard_metadata_get_shard_user (
    T_SHM_SHARD_USER * shm_user_p
) 

function shard_metadata_get_shard_user_from_shm

T_SHARD_USER * shard_metadata_get_shard_user_from_shm (
    T_SHM_PROXY * shm_proxy_p
) 

function shard_metadata_get_user

T_SHM_SHARD_USER * shard_metadata_get_user (
    T_SHM_PROXY * shm_proxy_p
) 

function shard_metadata_initialize

int shard_metadata_initialize (
    T_BROKER_INFO * br_info,
    T_SHM_PROXY * shm_proxy_p
) 

Public Static Functions Documentation

function shard_metadata_conn_comp

static int shard_metadata_conn_comp (
    const  void * p1,
    const  void * p2
) 

function shard_metadata_dump_conn

static void shard_metadata_dump_conn (
    FILE * fp,
    T_SHM_SHARD_CONN * shm_conn_p
) 

function shard_metadata_dump_key

static void shard_metadata_dump_key (
    FILE * fp,
    T_SHM_SHARD_KEY * shm_key_p
) 

function shard_metadata_dump_user

static void shard_metadata_dump_user (
    FILE * fp,
    T_SHM_SHARD_USER * shm_user_p
) 

function shard_metadata_key_range_comp

static int shard_metadata_key_range_comp (
    const  void * p1,
    const  void * p2
) 

function shard_metadata_read_conn

static int shard_metadata_read_conn (
    const  char * filename,
    T_SHM_PROXY * shm_proxy_p
) 

function shard_metadata_read_key

static int shard_metadata_read_key (
    const  char * filename,
    T_SHM_PROXY * shm_proxy_p
) 

function shard_metadata_read_user

static int shard_metadata_read_user (
    T_SHM_PROXY * shm_proxy_p,
    char * db_name,
    char * db_user,
    char * db_password
) 

function shard_metadata_sort_conn

static void shard_metadata_sort_conn (
    T_SHM_SHARD_CONN * shm_conn_p
) 

function shard_metadata_sort_key

static void shard_metadata_sort_key (
    T_SHM_SHARD_KEY * shm_key_p
) 

function shard_metadata_validate

static int shard_metadata_validate (
    T_BROKER_INFO * br_info_p,
    T_SHM_PROXY * shm_proxy_p
) 

function shard_metadata_validate_conn

static int shard_metadata_validate_conn (
    T_SHM_SHARD_CONN * shm_conn_p
) 

function shard_metadata_validate_key

static int shard_metadata_validate_key (
    T_SHM_SHARD_KEY * shm_key_p,
    T_SHM_SHARD_CONN * shm_conn_p,
    int modular
) 

function shard_metadata_validate_key_function

static int shard_metadata_validate_key_function (
    const  char * library_name,
    const  char * function_name
) 

function shard_metadata_validate_key_range_internal

static int shard_metadata_validate_key_range_internal (
    T_SHARD_KEY * key_p,
    T_SHM_SHARD_CONN * shm_conn_p,
    int modular
) 

function shard_metadata_validate_user

static int shard_metadata_validate_user (
    T_SHM_SHARD_USER * shm_user_p
) 

function shard_println_1

static void shard_println_1 (
    FILE * fp
) 

function shard_println_2

static void shard_println_2 (
    FILE * fp
) 

Macro Definition Documentation

define DEFAULT_NUM_CONN

#define DEFAULT_NUM_CONN `4`

define DEFAULT_NUM_KEY

#define DEFAULT_NUM_KEY `1`

define DEFAULT_NUM_USER

#define DEFAULT_NUM_USER `1`

define SHARD_METADATA_CONN_TABLE_NAME

#define SHARD_METADATA_CONN_TABLE_NAME `"shard_conn"`

define SHARD_METADATA_KEY_RANGE_TABLE_NAME

#define SHARD_METADATA_KEY_RANGE_TABLE_NAME `"shard_range"`

define SHARD_METADATA_USER_TABLE_NAME

#define SHARD_METADATA_USER_TABLE_NAME `"shard_user"`

define SHARD_QUERY_BUFFER_SIZE

#define SHARD_QUERY_BUFFER_SIZE `1024`


The documentation for this class was generated from the following file cubrid/src/broker/shard_metadata.c