/* * PROGRAM: JRD Access Method * MODULE: inf.h * DESCRIPTION: Information call declarations. * * The contents of this file are subject to the Interbase Public * License Version 1.0 (the "License"); you may not use this file * except in compliance with the License. You may obtain a copy * of the License at http://www.Inprise.com/IPL.html * * Software distributed under the License is distributed on an * "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express * or implied. See the License for the specific language governing * rights and limitations under the License. * * The Original Code was created by Inprise Corporation * and its predecessors. Portions created by Inprise Corporation are * Copyright (C) Inprise Corporation. * * All Rights Reserved. * Contributor(s): ______________________________________. * * 2001.07.28: John Bellardo: Added isc_info_rsb_skip to support LIMIT. */ #ifndef JRD_INF_PUB_H #define JRD_INF_PUB_H /* Common, structural codes */ /****************************/ #define isc_info_end 1 #define isc_info_truncated 2 #define isc_info_error 3 #define isc_info_data_not_ready 4 #define isc_info_flag_end 127 /******************************/ /* Database information items */ /******************************/ enum db_info_types { isc_info_db_id = 4, isc_info_reads = 5, isc_info_writes = 6, isc_info_fetches = 7, isc_info_marks = 8, isc_info_implementation = 11, isc_info_isc_version = 12, isc_info_base_level = 13, isc_info_page_size = 14, isc_info_num_buffers = 15, isc_info_limbo = 16, isc_info_current_memory = 17, isc_info_max_memory = 18, isc_info_window_turns = 19, isc_info_license = 20, isc_info_allocation = 21, isc_info_attachment_id = 22, isc_info_read_seq_count = 23, isc_info_read_idx_count = 24, isc_info_insert_count = 25, isc_info_update_count = 26, isc_info_delete_count = 27, isc_info_backout_count = 28, isc_info_purge_count = 29, isc_info_expunge_count = 30, isc_info_sweep_interval = 31, isc_info_ods_version = 32, isc_info_ods_minor_version = 33, isc_info_no_reserve = 34, isc_info_logfile = 35, isc_info_cur_logfile_name = 36, isc_info_cur_log_part_offset = 37, isc_info_num_wal_buffers = 38, isc_info_wal_buffer_size = 39, isc_info_wal_ckpt_length = 40, isc_info_wal_cur_ckpt_interval = 41, isc_info_wal_prv_ckpt_fname = 42, isc_info_wal_prv_ckpt_poffset = 43, isc_info_wal_recv_ckpt_fname = 44, isc_info_wal_recv_ckpt_poffset = 45, isc_info_wal_grpc_wait_usecs = 47, isc_info_wal_num_io = 48, isc_info_wal_avg_io_size = 49, isc_info_wal_num_commits = 50, isc_info_wal_avg_grpc_size = 51, isc_info_forced_writes = 52, isc_info_user_names = 53, isc_info_page_errors = 54, isc_info_record_errors = 55, isc_info_bpage_errors = 56, isc_info_dpage_errors = 57, isc_info_ipage_errors = 58, isc_info_ppage_errors = 59, isc_info_tpage_errors = 60, isc_info_set_page_buffers = 61, isc_info_db_sql_dialect = 62, isc_info_db_read_only = 63, isc_info_db_size_in_pages = 64, /* Values 65 -100 unused to avoid conflict with InterBase */ frb_info_att_charset = 101, isc_info_db_class = 102, isc_info_firebird_version = 103, isc_info_oldest_transaction = 104, isc_info_oldest_active = 105, isc_info_oldest_snapshot = 106, isc_info_next_transaction = 107, isc_info_db_provider = 108, isc_info_active_transactions = 109, isc_info_db_last_value /* Leave this LAST! */ }; #define isc_info_version isc_info_isc_version /**************************************/ /* Database information return values */ /**************************************/ enum info_db_implementations { isc_info_db_impl_rdb_vms = 1, isc_info_db_impl_rdb_eln = 2, isc_info_db_impl_rdb_eln_dev = 3, isc_info_db_impl_rdb_vms_y = 4, isc_info_db_impl_rdb_eln_y = 5, isc_info_db_impl_jri = 6, isc_info_db_impl_jsv = 7, isc_info_db_impl_isc_apl_68K = 25, isc_info_db_impl_isc_vax_ultr = 26, isc_info_db_impl_isc_vms = 27, isc_info_db_impl_isc_sun_68k = 28, isc_info_db_impl_isc_os2 = 29, isc_info_db_impl_isc_sun4 = 30, /* 30 */ isc_info_db_impl_isc_hp_ux = 31, isc_info_db_impl_isc_sun_386i = 32, isc_info_db_impl_isc_vms_orcl = 33, isc_info_db_impl_isc_mac_aux = 34, isc_info_db_impl_isc_rt_aix = 35, isc_info_db_impl_isc_mips_ult = 36, isc_info_db_impl_isc_xenix = 37, isc_info_db_impl_isc_dg = 38, isc_info_db_impl_isc_hp_mpexl = 39, isc_info_db_impl_isc_hp_ux68K = 40, /* 40 */ isc_info_db_impl_isc_sgi = 41, isc_info_db_impl_isc_sco_unix = 42, isc_info_db_impl_isc_cray = 43, isc_info_db_impl_isc_imp = 44, isc_info_db_impl_isc_delta = 45, isc_info_db_impl_isc_next = 46, isc_info_db_impl_isc_dos = 47, isc_info_db_impl_m88K = 48, isc_info_db_impl_unixware = 49, isc_info_db_impl_isc_winnt_x86 = 50, isc_info_db_impl_isc_epson = 51, isc_info_db_impl_alpha_osf = 52, isc_info_db_impl_alpha_vms = 53, isc_info_db_impl_netware_386 = 54, isc_info_db_impl_win_only = 55, isc_info_db_impl_ncr_3000 = 56, isc_info_db_impl_winnt_ppc = 57, isc_info_db_impl_dg_x86 = 58, isc_info_db_impl_sco_ev = 59, isc_info_db_impl_i386 = 60, isc_info_db_impl_freebsd = 61, isc_info_db_impl_netbsd = 62, isc_info_db_impl_darwin = 63, isc_info_db_impl_sinixz = 64, isc_info_db_impl_linux_sparc = 65, isc_info_db_impl_linux_amd64 = 66, isc_info_db_impl_last_value /* Leave this LAST! */ }; #define isc_info_db_impl_isc_a isc_info_db_impl_isc_apl_68K #define isc_info_db_impl_isc_u isc_info_db_impl_isc_vax_ultr #define isc_info_db_impl_isc_v isc_info_db_impl_isc_vms #define isc_info_db_impl_isc_s isc_info_db_impl_isc_sun_68k enum info_db_class { isc_info_db_class_access = 1, isc_info_db_class_y_valve = 2, isc_info_db_class_rem_int = 3, isc_info_db_class_rem_srvr = 4, isc_info_db_class_pipe_int = 7, isc_info_db_class_pipe_srvr = 8, isc_info_db_class_sam_int = 9, isc_info_db_class_sam_srvr = 10, isc_info_db_class_gateway = 11, isc_info_db_class_cache = 12, isc_info_db_class_classic_access = 13, isc_info_db_class_server_access = 14, isc_info_db_class_last_value /* Leave this LAST! */ }; enum info_db_provider { isc_info_db_code_rdb_eln = 1, isc_info_db_code_rdb_vms = 2, isc_info_db_code_interbase = 3, isc_info_db_code_firebird = 4, isc_info_db_code_last_value /* Leave this LAST! */ }; /*****************************/ /* Request information items */ /*****************************/ #define isc_info_number_messages 4 #define isc_info_max_message 5 #define isc_info_max_send 6 #define isc_info_max_receive 7 #define isc_info_state 8 #define isc_info_message_number 9 #define isc_info_message_size 10 #define isc_info_request_cost 11 #define isc_info_access_path 12 #define isc_info_req_select_count 13 #define isc_info_req_insert_count 14 #define isc_info_req_update_count 15 #define isc_info_req_delete_count 16 /*********************/ /* Access path items */ /*********************/ #define isc_info_rsb_end 0 #define isc_info_rsb_begin 1 #define isc_info_rsb_type 2 #define isc_info_rsb_relation 3 #define isc_info_rsb_plan 4 /*************/ /* RecordSource (RSB) types */ /*************/ #define isc_info_rsb_unknown 1 #define isc_info_rsb_indexed 2 #define isc_info_rsb_navigate 3 #define isc_info_rsb_sequential 4 #define isc_info_rsb_cross 5 #define isc_info_rsb_sort 6 #define isc_info_rsb_first 7 #define isc_info_rsb_boolean 8 #define isc_info_rsb_union 9 #define isc_info_rsb_aggregate 10 #define isc_info_rsb_merge 11 #define isc_info_rsb_ext_sequential 12 #define isc_info_rsb_ext_indexed 13 #define isc_info_rsb_ext_dbkey 14 #define isc_info_rsb_left_cross 15 #define isc_info_rsb_select 16 #define isc_info_rsb_sql_join 17 #define isc_info_rsb_simulate 18 #define isc_info_rsb_sim_cross 19 #define isc_info_rsb_once 20 #define isc_info_rsb_procedure 21 #define isc_info_rsb_skip 22 /**********************/ /* Bitmap expressions */ /**********************/ #define isc_info_rsb_and 1 #define isc_info_rsb_or 2 #define isc_info_rsb_dbkey 3 #define isc_info_rsb_index 4 #define isc_info_req_active 2 #define isc_info_req_inactive 3 #define isc_info_req_send 4 #define isc_info_req_receive 5 #define isc_info_req_select 6 #define isc_info_req_sql_stall 7 /**************************/ /* Blob information items */ /**************************/ #define isc_info_blob_num_segments 4 #define isc_info_blob_max_segment 5 #define isc_info_blob_total_length 6 #define isc_info_blob_type 7 /*********************************/ /* Transaction information items */ /*********************************/ #define isc_info_tra_id 4 /*************************/ /* SQL information items */ /*************************/ #define isc_info_sql_select 4 #define isc_info_sql_bind 5 #define isc_info_sql_num_variables 6 #define isc_info_sql_describe_vars 7 #define isc_info_sql_describe_end 8 #define isc_info_sql_sqlda_seq 9 #define isc_info_sql_message_seq 10 #define isc_info_sql_type 11 #define isc_info_sql_sub_type 12 #define isc_info_sql_scale 13 #define isc_info_sql_length 14 #define isc_info_sql_null_ind 15 #define isc_info_sql_field 16 #define isc_info_sql_relation 17 #define isc_info_sql_owner 18 #define isc_info_sql_alias 19 #define isc_info_sql_sqlda_start 20 #define isc_info_sql_stmt_type 21 #define isc_info_sql_get_plan 22 #define isc_info_sql_records 23 #define isc_info_sql_batch_fetch 24 /*********************************/ /* SQL information return values */ /*********************************/ #define isc_info_sql_stmt_select 1 #define isc_info_sql_stmt_insert 2 #define isc_info_sql_stmt_update 3 #define isc_info_sql_stmt_delete 4 #define isc_info_sql_stmt_ddl 5 #define isc_info_sql_stmt_get_segment 6 #define isc_info_sql_stmt_put_segment 7 #define isc_info_sql_stmt_exec_procedure 8 #define isc_info_sql_stmt_start_trans 9 #define isc_info_sql_stmt_commit 10 #define isc_info_sql_stmt_rollback 11 #define isc_info_sql_stmt_select_for_upd 12 #define isc_info_sql_stmt_set_generator 13 #define isc_info_sql_stmt_savepoint 14 #endif /* JRD_INF_PUB_H */