28 #ifndef _XSERVER_INTERFACE_H_ 29 #define _XSERVER_INTERFACE_H_ 33 #if !defined (SERVER_MODE) && !defined (SA_MODE) 34 #error Belongs to server module 59 bool db_overwrite,
const char *file_addmore_vols,
volatile DKNPAGES db_npages,
61 PGLENGTH db_desired_log_page_size,
OID * rootclass_oid,
HFID * rootclass_hfid,
69 bool delete_unneeded_logarchives,
const char *backup_verbose_file,
int num_threads,
83 const char **classname,
OID * class_oid);
91 OID * class_oid,
const char *classname);
94 OID * class_oid,
int class_chn,
int prefetching,
LC_COPYAREA ** fetch_area);
101 int *instance_lock_timeout,
OID * class_oid,
LOCK * class_lock,
int *nobjects,
102 int *nfetched,
int *nfailed_instance_locks,
OID * last_oid,
106 int class_chn,
LOCK lock,
int quit_on_errors,
int prune_level,
109 const char **many_classnames,
LOCK * many_locks,
111 OID * guessed_class_oids,
int *guessed_class_chns,
117 int need_fetching,
int prefetching,
LC_COPYAREA ** fetch_area);
119 int *ignore_error_list);
127 int n_attrs,
int *attr_ids,
OID * pk_cls_oid,
BTID * pk_btid,
char *fk_name);
172 int unique_pk,
int num_oids,
int num_nulls,
int num_keys);
174 OID * class_oids,
int n_classes,
int n_attrs,
int *attr_ids,
int *attrs_prefix_length,
175 HFID * hfids,
int unique_pk,
int not_null_flag,
OID * fk_refcls_oid,
176 BTID * fk_refcls_pk_btid,
const char *fk_name,
char *pred_stream,
int pred_stream_size,
177 char *expr_stream,
int expr_steram_size,
int func_col_id,
int func_attr_index_start);
179 OID * class_oids,
int n_classes,
int n_attrs,
int *attr_ids,
180 int *attrs_prefix_length,
HFID * hfids,
int unique_pk,
int not_null_flag,
181 OID * fk_refcls_oid,
BTID * fk_refcls_pk_btid,
const char *fk_name,
182 char *pred_stream,
int pred_stream_size,
char *expr_stream,
int expr_steram_size,
187 DB_VALUE * key,
OID * class_oid,
OID * oid,
bool is_all_class_srch);
193 OID * class_oid,
int attr_id,
bool is_tmp);
213 char *page_bufp,
int *page_sizep);
223 QUERY_ID * query_id,
int dbval_cnt,
void *data,
242 int include_query_exec_info);
245 int instance_lock_timeout,
int class_lock_timeout,
bool delete_old_repr,
247 int *
failed_objects,
int *modified_objects,
int *big_objects,
int *initial_last_repr_id);
267 char *info,
int info_len);
284 const OID * class_oidp);
TRAN_STATE xtran_server_2pc_prepare_global_tran(THREAD_ENTRY *thread_p, int gtrid)
LC_FIND_CLASSNAME xlocator_delete_class_name(THREAD_ENTRY *thread_p, const char *classname)
bool xlocator_notify_isolation_incons(THREAD_ENTRY *thread_p, LC_COPYAREA **synch_area)
int xsession_delete_prepared_statement(THREAD_ENTRY *thread_p, const char *name)
int xboot_compact_start(THREAD_ENTRY *thread_p)
int xsession_remove_query_entry_info(THREAD_ENTRY *thread_p, const QUERY_ID query_id)
int xsession_get_prepared_statement(THREAD_ENTRY *thread_p, const char *name, char **info, int *info_len, XASL_ID *xasl_id, xasl_node_header *xasl_header_p)
void xsession_store_query_entry_info(THREAD_ENTRY *thread_p, QMGR_QUERY_ENTRY *qentry_p)
int xdisk_get_purpose_and_space_info(THREAD_ENTRY *thread_p, VOLID volid, DISK_VOLPURPOSE *vol_purpose, DISK_VOLUME_SPACE_INFO *space_info)
int xboot_check_db_consistency(THREAD_ENTRY *thread_p, int check_flag, OID *oids, int num_oids, BTID *index_btid)
int xacl_reload(THREAD_ENTRY *thread_p)
int xlocator_fetch_lockhint_classes(THREAD_ENTRY *thread_p, LC_LOCKHINT *lockhint, LC_COPYAREA **fetch_area)
int xboot_heap_compact(THREAD_ENTRY *thread_p, OID *class_oid)
int xsession_get_row_count(THREAD_ENTRY *thread_p, int *row_count)
int xfile_apply_tde_to_class_files(THREAD_ENTRY *thread_p, const OID *class_oid)
TRAN_STATE xtran_server_partial_abort(THREAD_ENTRY *thread_p, const char *savept_name, LOG_LSA *savept_lsa)
char * xdisk_get_remarks(THREAD_ENTRY *thread_p, VOLID volid)
int xboot_register_client(THREAD_ENTRY *thread_p, BOOT_CLIENT_CREDENTIAL *client_credential, int client_lock_wait, TRAN_ISOLATION client_isolation, TRAN_STATE *tran_state, BOOT_SERVER_CREDENTIAL *server_credential)
LOG_LSA * xrepl_log_get_append_lsa(void)
DISK_ISVALID xboot_checkdb_table(THREAD_ENTRY *thread_p, int check_flag, OID *oid, BTID *index_btid)
int xcatalog_check_rep_dir(THREAD_ENTRY *thread_p, OID *class_id, OID *rep_dir_p)
int xehash_destroy(THREAD_ENTRY *thread_p, EHID *ehid)
int xlocator_force(THREAD_ENTRY *thread_p, LC_COPYAREA *copy_area, int num_ignore_error_list, int *ignore_error_list)
BTID * xbtree_add_index(THREAD_ENTRY *thread_p, BTID *btid, TP_DOMAIN *key_type, OID *class_oid, int attr_id, int unique_pk, int num_oids, int num_nulls, int num_keys)
int xtran_server_start_topop(THREAD_ENTRY *thread_p, LOG_LSA *topop_lsa)
int xrepl_set_info(THREAD_ENTRY *thread_p, REPL_INFO *repl_info)
VOLID xboot_find_last_permanent(THREAD_ENTRY *thread_p)
BTREE_SEARCH xbtree_find_multi_uniques(THREAD_ENTRY *thread_p, OID *class_oid, int pruning_type, BTID *btids, DB_VALUE *values, int count, SCAN_OPERATION_TYPE op_type, OID **oids, int *oids_count)
TRAN_STATE xtran_server_commit(THREAD_ENTRY *thrd, bool retain_lock)
bool xtran_should_connection_reset(THREAD_ENTRY *thread_p, bool has_updated)
int xbtree_delete_index(THREAD_ENTRY *thread_p, BTID *btid)
int xqmgr_end_query(THREAD_ENTRY *thrd, QUERY_ID query_id)
int xlocator_fetch_all(THREAD_ENTRY *thread_p, const HFID *hfid, LOCK *lock, LC_FETCH_VERSION_TYPE fetch_type, OID *class_oid, int *nobjects, int *nfetched, OID *last_oid, LC_COPYAREA **fetch_area)
int xtran_server_2pc_attach_global_tran(THREAD_ENTRY *thread_p, int gtrid)
int xtran_server_set_global_tran_info(THREAD_ENTRY *thread_p, int gtrid, void *info, int size)
int xboot_initialize_server(const BOOT_CLIENT_CREDENTIAL *client_credential, BOOT_DB_PATH_INFO *db_path_info, bool db_overwrite, const char *file_addmore_vols, volatile DKNPAGES db_npages, PGLENGTH db_desired_pagesize, volatile DKNPAGES xlog_npages, PGLENGTH db_desired_log_page_size, OID *rootclass_oid, HFID *rootclass_hfid, int client_lock_wait, TRAN_ISOLATION client_isolation)
enum lc_prefetch_flags LC_PREFETCH_FLAGS
int xqfile_get_list_file_page(THREAD_ENTRY *thread_p, QUERY_ID query_id, VOLID volid, PAGEID pageid, char *page_bufp, int *page_sizep)
TRAN_STATE xtran_server_abort(THREAD_ENTRY *thrd)
VOLID xboot_peek_last_permanent(THREAD_ENTRY *thread_p)
int xsession_create_new(THREAD_ENTRY *thread_p, SESSION_ID *id)
int xboot_compact_db(THREAD_ENTRY *thread_p, OID *class_oids, int n_classes, int space_to_process, int instance_lock_timeout, int class_lock_timeout, bool delete_old_repr, OID *last_processed_class_oid, OID *last_processed_oid, int *total_objects, int *failed_objects, int *modified_objects, int *big_objects, int *initial_last_repr_id)
int xsession_get_session_variable(THREAD_ENTRY *thread_p, const DB_VALUE *name, DB_VALUE *value)
int xboot_find_number_temp_volumes(THREAD_ENTRY *thread_p)
int xtde_get_mk_info(THREAD_ENTRY *thread_p, int *mk_index, time_t *created_time, time_t *set_time)
int xlogtb_reset_wait_msecs(THREAD_ENTRY *thread_p, int wait_msecs)
int xlogin_user(THREAD_ENTRY *thread_p, const char *username)
bool xlogtb_does_active_user_exist(THREAD_ENTRY *thread_p, const char *user_name)
int xlocator_assign_oid_batch(THREAD_ENTRY *thread_p, LC_OIDSET *oidset)
void xlogtb_set_interrupt(THREAD_ENTRY *thread_p, int set)
int xtran_wait_server_active_trans(THREAD_ENTRY *thrd)
int xsession_clear_query_entry_info(THREAD_ENTRY *thread_p, const QUERY_ID query_id)
BTREE_SEARCH xbtree_find_unique(THREAD_ENTRY *thread_p, BTID *btid, SCAN_OPERATION_TYPE scan_op_type, DB_VALUE *key, OID *class_oid, OID *oid, bool is_all_class_srch)
LC_FIND_CLASSNAME xlocator_reserve_class_names(THREAD_ENTRY *thread_p, const int num_classes, const char **classname, OID *class_oid)
EHID * xehash_create(THREAD_ENTRY *thread_p, EHID *ehid, DB_TYPE key_type, int exp_num_entries, OID *class_oid, int attr_id, bool is_tmp)
int xboot_compact_stop(THREAD_ENTRY *thread_p)
char * xdisk_get_fullname(THREAD_ENTRY *thread_p, VOLID volid, char *vol_fullname)
int xlocator_does_exist(THREAD_ENTRY *thread_p, OID *oid, int chn, LOCK lock, LC_FETCH_VERSION_TYPE fetch_version_type, OID *class_oid, int class_chn, int need_fetching, int prefetching, LC_COPYAREA **fetch_area)
int xboot_find_number_permanent_volumes(THREAD_ENTRY *thread_p)
int xbtree_class_test_unique(THREAD_ENTRY *thread_p, char *buf, int buf_size)
int xlocator_repl_force(THREAD_ENTRY *thread_p, LC_COPYAREA *copy_area, LC_COPYAREA **reply_area)
int log_set_no_logging(void)
int xlocator_fetch(THREAD_ENTRY *thrd, OID *oid, int chn, LOCK lock, LC_FETCH_VERSION_TYPE fetch_version_type, LC_FETCH_VERSION_TYPE initial_fetch_version_type, OID *class_oid, int class_chn, int prefetching, LC_COPYAREA **fetch_area)
void xqmgr_dump_query_plans(THREAD_ENTRY *thread_p, FILE *outfp)
int xheap_destroy_newly_created(THREAD_ENTRY *thread_p, const HFID *hfid, const OID *class_oid)
int xchksum_insert_repl_log_and_demote_table_lock(THREAD_ENTRY *thread_p, REPL_INFO *repl_info, const OID *class_oidp)
int xtran_lock_rep_read(THREAD_ENTRY *thread_p, LOCK lock_rr_tran)
int xlocator_assign_oid(THREAD_ENTRY *thread_p, const HFID *hfid, OID *perm_oid, int expected_length, OID *class_oid, const char *classname)
DISK_VOLPURPOSE xdisk_get_purpose(THREAD_ENTRY *thread_p, VOLID volid)
int xlocator_lock_and_fetch_all(THREAD_ENTRY *thread_p, const HFID *hfid, LOCK *instance_lock, int *instance_lock_timeout, OID *class_oid, LOCK *class_lock, int *nobjects, int *nfetched, int *nfailed_instance_locks, OID *last_oid, LC_COPYAREA **fetch_area, MVCC_SNAPSHOT *mvcc_snapshot)
int xlocator_remove_class_from_index(THREAD_ENTRY *thread_p, OID *oid, BTID *btid, HFID *hfid)
LC_FIND_CLASSNAME xlocator_find_class_oid(THREAD_ENTRY *thread_p, const char *classname, OID *class_oid, LOCK lock)
int xsession_get_last_insert_id(THREAD_ENTRY *thread_p, DB_VALUE *value, bool update_last_insert_id)
int xsession_create_prepared_statement(THREAD_ENTRY *thread_p, char *name, char *alias_print, SHA1Hash *sha1, char *info, int info_len)
void xlogtb_set_suppress_repl_on_transaction(THREAD_ENTRY *thread_p, int set)
bool logtb_has_updated(THREAD_ENTRY *thread_p)
TRAN_STATE xtran_server_end_topop(THREAD_ENTRY *thread_p, LOG_RESULT_TOPOP result, LOG_LSA *topop_lsa)
int xboot_backup(THREAD_ENTRY *thread_p, const char *backup_path, FILEIO_BACKUP_LEVEL backup_level, bool delete_unneeded_logarchives, const char *backup_verbose_file, int num_threads, FILEIO_ZIP_METHOD zip_method, FILEIO_ZIP_LEVEL zip_level, int skip_activelog, int sleep_msecs, bool separate_keys)
float log_get_db_compatibility(void)
int xheap_create(THREAD_ENTRY *thread_p, HFID *hfid, const OID *class_oid, bool reuse_oid)
LOG_LSA * log_get_final_restored_lsa(void)
int xlogtb_reset_isolation(THREAD_ENTRY *thread_p, TRAN_ISOLATION isolation)
int xsession_check_session(THREAD_ENTRY *thread_p, const SESSION_ID id)
int xtde_change_mk_without_flock(THREAD_ENTRY *thread_p, const int mk_index)
LC_FIND_CLASSNAME xlocator_rename_class_name(THREAD_ENTRY *thread_p, const char *oldname, const char *newname, OID *class_oid)
int xqmgr_prepare_query(THREAD_ENTRY *thrd, compile_context *ctx, xasl_stream *stream)
DKNPAGES xdisk_get_total_numpages(THREAD_ENTRY *thread_p, VOLID volid)
static int failed_objects
int xsession_set_session_variables(THREAD_ENTRY *thread_p, DB_VALUE *values, const int count)
int xsession_set_cur_insert_id(THREAD_ENTRY *thread_p, const DB_VALUE *value, bool force)
void xperfmon_server_copy_stats(THREAD_ENTRY *thread_p, UINT64 *to_stats)
int xtran_server_get_global_tran_info(THREAD_ENTRY *thread_p, int gtrid, void *buffer, int size)
void xlock_dump(THREAD_ENTRY *thread_p, FILE *outfp)
int count(int &result, const cub_regex_object ®, const std::string &src, const int position, const INTL_CODESET codeset)
int xtran_server_is_active_and_has_updated(THREAD_ENTRY *thread_p)
LC_FIND_CLASSNAME xlocator_find_lockhint_class_oids(THREAD_ENTRY *thread_p, int num_classes, const char **many_classnames, LOCK *many_locks, int *many_need_subclasses, LC_PREFETCH_FLAGS *many_flags, OID *guessed_class_oids, int *guessed_class_chns, bool quit_on_errors, LC_LOCKHINT **hlock, LC_COPYAREA **fetch_area)
int xsession_drop_session_variables(THREAD_ENTRY *thread_p, DB_VALUE *values, const int count)
int xsession_reset_cur_insert_id(THREAD_ENTRY *thread_p)
int xsession_end_session(THREAD_ENTRY *thread, const SESSION_ID id)
int xsession_set_tran_auto_commit(THREAD_ENTRY *thread_p, bool auto_commit)
int xsession_set_row_count(THREAD_ENTRY *thread_p, int row_count)
int xsession_get_session_variable_no_copy(THREAD_ENTRY *thread_p, const DB_VALUE *name, DB_VALUE **value)
int xtran_server_savepoint(THREAD_ENTRY *thread_p, const char *savept_name, LOG_LSA *savept_lsa)
const char * xboot_get_server_session_key(void)
int xstats_update_all_statistics(THREAD_ENTRY *thread_p, bool with_fullscan)
int xheap_destroy(THREAD_ENTRY *thread_p, const HFID *hfid, const OID *class_oid)
bool xdisk_is_volume_exist(THREAD_ENTRY *thread_p, VOLID volid)
BTID * xbtree_load_online_index(THREAD_ENTRY *thread_p, BTID *btid, const char *bt_name, TP_DOMAIN *key_type, OID *class_oids, int n_classes, int n_attrs, int *attr_ids, int *attrs_prefix_length, HFID *hfids, int unique_pk, int not_null_flag, OID *fk_refcls_oid, BTID *fk_refcls_pk_btid, const char *fk_name, char *pred_stream, int pred_stream_size, char *expr_stream, int expr_steram_size, int func_col_id, int func_attr_index_start, int ib_thread_count)
int disk_get_boot_db_charset(THREAD_ENTRY *thread_p, INT16 volid, INTL_CODESET *db_charset)
int xstats_update_statistics(THREAD_ENTRY *thread_p, OID *classoid, bool with_fullscan)
int xlogtb_get_pack_tran_table(THREAD_ENTRY *thread_p, char **buffer_p, int *size_p, int include_query_exec_info)
bool xtran_server_has_updated(THREAD_ENTRY *thread_p)
enum intl_codeset INTL_CODESET
void xacl_dump(THREAD_ENTRY *thread_p, FILE *outfp)
DKNPAGES xdisk_get_free_numpages(THREAD_ENTRY *thread_p, VOLID volid)
char * xstats_get_statistics_from_server(THREAD_ENTRY *thread_p, OID *class_id, unsigned int timestamp, int *length)
int xlocator_fetch_lockset(THREAD_ENTRY *thread_p, LC_LOCKSET *lockset, LC_COPYAREA **fetch_area)
QFILE_LIST_ID * xqmgr_execute_query(THREAD_ENTRY *thrd, const XASL_ID *xasl_id, QUERY_ID *query_idp, int dbval_cnt, void *data, QUERY_FLAG *flagp, CACHE_TIME *clt_cache_time, CACHE_TIME *srv_cache_time, int query_timeout, xasl_cache_ent **ret_cache_entry_p)
bool xtran_is_blocked(THREAD_ENTRY *thread_p, int tran_index)
void xperfmon_server_copy_global_stats(UINT64 *to_stats)
BTID * xbtree_load_index(THREAD_ENTRY *thread_p, BTID *btid, const char *bt_name, TP_DOMAIN *key_type, OID *class_oids, int n_classes, int n_attrs, int *attr_ids, int *attrs_prefix_length, HFID *hfids, int unique_pk, int not_null_flag, OID *fk_refcls_oid, BTID *fk_refcls_pk_btid, const char *fk_name, char *pred_stream, int pred_stream_size, char *expr_stream, int expr_steram_size, int func_col_id, int func_attr_index_start)
void xqmgr_dump_query_cache(THREAD_ENTRY *thread_p, FILE *outfp)
VOLID xboot_add_volume_extension(THREAD_ENTRY *thread_p, DBDEF_VOL_EXT_INFO *ext_info)
QFILE_LIST_ID * xqmgr_prepare_and_execute_query(THREAD_ENTRY *thrd, char *xasl_stream, int xasl_stream_size, QUERY_ID *query_id, int dbval_cnt, void *data, QUERY_FLAG *flag, int query_timeout)
TRAN_STATE xtran_server_2pc_prepare(THREAD_ENTRY *thread_p)
int xlocator_check_fk_validity(THREAD_ENTRY *thread_p, OID *cls_oid, HFID *hfid, TP_DOMAIN *key_type, int n_attrs, int *attr_ids, OID *pk_cls_oid, BTID *pk_btid, char *fk_name)
int xlocator_demote_class_lock(THREAD_ENTRY *thread_p, const OID *class_oid, LOCK lock, LOCK *ex_lock)
int xlocator_get_reserved_class_name_oid(THREAD_ENTRY *thread_p, const char *classname, OID *class_oid)
int xtran_server_2pc_start(THREAD_ENTRY *thread_p)
int xboot_unregister_client(REFPTR(THREAD_ENTRY, thread_p), int tran_index)
int xlocator_fetch_all_reference_lockset(THREAD_ENTRY *thread_p, OID *oid, int chn, OID *class_oid, int class_chn, LOCK lock, int quit_on_errors, int prune_level, LC_LOCKSET **lockset, LC_COPYAREA **fetch_area)
int xqmgr_drop_all_query_plans(THREAD_ENTRY *thread_p)
int xlocator_upgrade_instances_domain(THREAD_ENTRY *thread_p, OID *class_oid, int att_id)
int xlocator_get_class(THREAD_ENTRY *thread_p, OID *class_oid, int class_chn, const OID *oid, LOCK lock, int prefetching, LC_COPYAREA **fetch_area)
VOLID xboot_find_last_temp(THREAD_ENTRY *thread_p)
int xtran_server_2pc_recovery_prepared(THREAD_ENTRY *thread_p, int gtrids[], int size)
int xsession_load_query_entry_info(THREAD_ENTRY *thread_p, QMGR_QUERY_ENTRY *qentry_p)