Skip to content

File compactdb_cl.c

FileList > cubrid > src > executables > compactdb_cl.c

Go to the source code of this file

  • #include "config.h"
  • #include <stdio.h>
  • #include <errno.h>
  • #include <string.h>
  • #include <assert.h>
  • #include "porting.h"
  • #include "dbtype.h"
  • #include "load_object.h"
  • #include "db.h"
  • #include "locator_cl.h"
  • #include "schema_manager.h"
  • #include "object_accessor.h"
  • #include "set_object.h"
  • #include "message_catalog.h"
  • #include "network_interface_cl.h"
  • #include "server_interface.h"
  • #include "system_parameter.h"
  • #include "utility.h"
  • #include "authenticate.h"
  • #include "transaction_cl.h"
  • #include "execute_schema.h"
  • #include "object_primitive.h"

Public Functions

Type Name
int compactdb (UTIL_FUNCTION_ARG * arg)
int get_class_mops (char ** class_names, int num_class, MOP ** class_list, int * num_class_list)
int get_class_mops_from_file (const char * input_filename, MOP ** class_list, int * num_class_mops)

Public Static Functions

Type Name
int class_instances_can_be_referenced (MOP mop, MOP parent_mop, bool *const class_can_be_referenced, bool *const any_class_can_be_referenced, MOP *const all_mops, const int num_mops)
int class_referenced_by_attributes (MOP referenced_class, MOP parent_mop, SM_ATTRIBUTE *const attributes_list, bool *const class_can_be_referenced, bool *const any_class_can_be_referenced)
int class_referenced_by_class (MOP referenced_mop, MOP parent_mop, MOP referring_mop, bool *const class_can_be_referenced, bool *const any_class_can_be_referenced)
void class_referenced_by_domain (MOP referenced_class, TP_DOMAIN *const domain, bool *const class_can_be_referenced, bool *const any_class_can_be_referenced)
int compactdb_start (bool verbose_flag, bool delete_old_repr_flag, char * input_filename, char ** input_class_names, int input_class_length, int max_processed_space, int instance_lock_timeout, int class_lock_timeout, DB_TRAN_ISOLATION tran_isolation)
void compactdb_usage (const char * argv0)
int do_reclaim_addresses (OID *const * class_oids, const int num_class_oids, int *const num_classes_fully_processed, const bool verbose, const int class_lock_timeout)
int do_reclaim_class_addresses (const OID class_oid, char ** clas_name, bool *const any_class_can_be_referenced, bool *const correctly_processed, bool *const addresses_reclaimed, int *const error_while_processing)
int find_oid (OID * oid, OID ** oids_list, int num_oids)
char * get_name_from_class_oid (OID * class_oid)
int is_not_system_class (MOBJ class_)
void show_statistics (OID * class_oid, bool unlocked_class, bool valid_class, bool processed_class, int total_objects, int failed_objects, int modified_objects, int big_objects, bool delete_old_repr_flag, bool old_repr_deleted)

Macros

Type Name
define COMPACT_CLASS_MAX_LOCK_TIMEOUT 10
define COMPACT_CLASS_MIN_LOCK_TIMEOUT 1
define COMPACT_INSTANCE_MAX_LOCK_TIMEOUT 10
define COMPACT_INSTANCE_MIN_LOCK_TIMEOUT 1
define COMPACT_MAX_PAGES 20
define COMPACT_MIN_PAGES 1

Public Functions Documentation

function compactdb

int compactdb (
    UTIL_FUNCTION_ARG * arg
) 

function get_class_mops

int get_class_mops (
    char ** class_names,
    int num_class,
    MOP ** class_list,
    int * num_class_list
) 

function get_class_mops_from_file

int get_class_mops_from_file (
    const  char * input_filename,
    MOP ** class_list,
    int * num_class_mops
) 

Public Static Functions Documentation

function class_instances_can_be_referenced

static int class_instances_can_be_referenced (
    MOP mop,
    MOP parent_mop,
    bool * const class_can_be_referenced,
    bool * const any_class_can_be_referenced,
    MOP * const all_mops,
    const  int num_mops
) 

function class_referenced_by_attributes

static int class_referenced_by_attributes (
    MOP referenced_class,
    MOP parent_mop,
    SM_ATTRIBUTE * const attributes_list,
    bool * const class_can_be_referenced,
    bool * const any_class_can_be_referenced
) 

function class_referenced_by_class

static int class_referenced_by_class (
    MOP referenced_mop,
    MOP parent_mop,
    MOP referring_mop,
    bool * const class_can_be_referenced,
    bool * const any_class_can_be_referenced
) 

function class_referenced_by_domain

static void class_referenced_by_domain (
    MOP referenced_class,
    TP_DOMAIN * const domain,
    bool * const class_can_be_referenced,
    bool * const any_class_can_be_referenced
) 

function compactdb_start

static int compactdb_start (
    bool verbose_flag,
    bool delete_old_repr_flag,
    char * input_filename,
    char ** input_class_names,
    int input_class_length,
    int max_processed_space,
    int instance_lock_timeout,
    int class_lock_timeout,
    DB_TRAN_ISOLATION tran_isolation
) 

function compactdb_usage

static void compactdb_usage (
    const  char * argv0
) 

function do_reclaim_addresses

static int do_reclaim_addresses (
    OID * const * class_oids,
    const  int num_class_oids,
    int * const num_classes_fully_processed,
    const  bool verbose,
    const  int class_lock_timeout
) 

function do_reclaim_class_addresses

static int do_reclaim_class_addresses (
    const  OID class_oid,
    char ** clas_name,
    bool * const any_class_can_be_referenced,
    bool * const correctly_processed,
    bool * const addresses_reclaimed,
    int * const error_while_processing
) 

function find_oid

static int find_oid (
    OID * oid,
    OID ** oids_list,
    int num_oids
) 

function get_name_from_class_oid

static char * get_name_from_class_oid (
    OID * class_oid
) 

function is_not_system_class

static int is_not_system_class (
    MOBJ class_
) 

function show_statistics

static void show_statistics (
    OID * class_oid,
    bool unlocked_class,
    bool valid_class,
    bool processed_class,
    int total_objects,
    int failed_objects,
    int modified_objects,
    int big_objects,
    bool delete_old_repr_flag,
    bool old_repr_deleted
) 

Macro Definition Documentation

define COMPACT_CLASS_MAX_LOCK_TIMEOUT

#define COMPACT_CLASS_MAX_LOCK_TIMEOUT `10`

define COMPACT_CLASS_MIN_LOCK_TIMEOUT

#define COMPACT_CLASS_MIN_LOCK_TIMEOUT `1`

define COMPACT_INSTANCE_MAX_LOCK_TIMEOUT

#define COMPACT_INSTANCE_MAX_LOCK_TIMEOUT `10`

define COMPACT_INSTANCE_MIN_LOCK_TIMEOUT

#define COMPACT_INSTANCE_MIN_LOCK_TIMEOUT `1`

define COMPACT_MAX_PAGES

#define COMPACT_MAX_PAGES `20`

define COMPACT_MIN_PAGES

#define COMPACT_MIN_PAGES `1`


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