Drizzled Public API Documentation

dict_index_struct Struct Reference

#include <dict0mem.h>

List of all members.

Public Attributes

index_id_t id
mem_heap_theap
const char * name
const char * table_name
dict_table_ttable
unsigned space:32
unsigned page:32
unsigned type:4
unsigned trx_id_offset:10
unsigned n_user_defined_cols:10
unsigned n_uniq:10
unsigned n_def:10
unsigned n_fields:10
unsigned n_nullable:10
unsigned cached:1
unsigned to_be_dropped:1
dict_field_tfields
 indexes
btr_search_tsearch_info
rw_lock_t lock
trx_id_t trx_id
ib_int64_t * stat_n_diff_key_vals
ulint stat_index_size
ulint stat_n_leaf_pages

Detailed Description

Data structure for an index. Most fields will be initialized to 0, NULL or FALSE in dict_mem_index_create().

Definition at line 308 of file dict0mem.h.


Member Data Documentation

TRUE if the index object is in the dictionary cache

Definition at line 335 of file dict0mem.h.

Referenced by dict_ind_init(), and mlog_parse_index().

array of field descriptions

Definition at line 341 of file dict0mem.h.

Referenced by innobase_match_index_columns(), and mlog_parse_index().

list of indexes of the table

Definition at line 344 of file dict0mem.h.

Referenced by drizzled::TableShare::fieldInPrimaryKey().

read-write lock protecting the upper levels of the index tree

Definition at line 363 of file dict0mem.h.

Referenced by dict_index_add_to_cache(), and dict_index_remove_from_cache().

number of fields defined so far

Definition at line 332 of file dict0mem.h.

Referenced by dict_index_add_col(), dict_index_add_to_cache(), dict_load_field_low(), and dict_mem_index_add_field().

number of fields from the beginning which are enough to determine an index entry uniquely

Definition at line 329 of file dict0mem.h.

Referenced by dict_index_add_to_cache(), ha_innobase::info(), and mlog_parse_index().

number of columns the user defined to be in the index: in the internal representation we add more columns

Definition at line 326 of file dict0mem.h.

Referenced by innobase_match_index_columns().

index tree root page number

Definition at line 317 of file dict0mem.h.

Referenced by dict_create_index_step(), dict_index_add_to_cache(), and dict_truncate_index_tree().

space where the index tree is placed

Definition at line 316 of file dict0mem.h.

Referenced by btr_cur_pessimistic_delete(), btr_cur_pessimistic_insert(), btr_cur_pessimistic_update(), and row_truncate_table_for_mysql().

approximate index size in database pages

Definition at line 357 of file dict0mem.h.

Referenced by btr_estimate_number_of_different_key_vals(), dict_index_add_to_cache(), and dict_update_statistics().

Statistics for query optimization approximate number of different key values for this index, for each n-column prefix where n <= dict_get_n_unique(index); we periodically calculate new estimates

Definition at line 350 of file dict0mem.h.

Referenced by btr_estimate_number_of_different_key_vals(), dict_index_add_to_cache(), dict_update_statistics(), and ha_innobase::info().

back pointer to table

Definition at line 313 of file dict0mem.h.

Referenced by btr_compress(), btr_create(), btr_cur_del_mark_set_clust_rec(), btr_cur_del_mark_set_sec_rec(), btr_cur_open_at_index_side_func(), btr_cur_open_at_rnd_pos_func(), btr_cur_optimistic_insert(), btr_cur_optimistic_update(), btr_cur_parse_del_mark_set_clust_rec(), btr_cur_parse_update_in_place(), btr_cur_pessimistic_insert(), btr_cur_search_to_nth_level(), btr_cur_update_in_place(), btr_discard_page(), btr_estimate_n_rows_in_range(), btr_free_externally_stored_field(), btr_index_rec_validate(), btr_page_alloc(), btr_store_big_rec_extern_fields(), build_template(), dict_ind_init(), dict_index_add_to_cache(), dict_index_build_data_tuple(), dict_index_build_node_ptr(), dict_index_calc_min_rec_len(), dict_index_contains_col_or_prefix(), dict_index_copy_rec_order_prefix(), dict_index_get_nth_col_pos(), dtuple_convert_big_rec(), ibuf_insert(), innobase_get_mysql_key_number_for_index(), ha_innobase::innobase_initialize_autoinc(), innobase_rec_to_mysql(), lock_clust_rec_modify_check_and_lock(), lock_clust_rec_read_check_and_lock(), lock_rec_insert_check_and_lock(), lock_sec_rec_modify_check_and_lock(), lock_sec_rec_read_check_and_lock(), mlog_open_and_write_index(), mlog_parse_index(), opt_find_all_cols(), page_copy_rec_list_end_no_locks(), page_create_zip(), page_cur_delete_rec(), page_cur_insert_rec_low(), page_cur_insert_rec_zip(), page_cur_parse_insert_rec(), page_delete_rec_list_start(), page_parse_delete_rec_list(), page_print_list(), page_validate(), rec_convert_dtuple_to_rec(), rec_convert_dtuple_to_rec_comp(), rec_copy_prefix_to_buf(), rec_copy_prefix_to_dtuple(), rec_get_n_extern_new(), rec_get_offsets_func(), rec_get_offsets_reverse(), rec_print(), row_build(), row_build_row_ref(), row_build_row_ref_in_tuple(), row_get_clust_rec(), row_ins_index_entry(), row_search_for_mysql(), row_sel_convert_mysql_key_to_innobase(), row_upd_changes_ord_field_binary(), row_upd_index_replace_new_col_vals(), row_upd_index_replace_new_col_vals_index_pos(), row_upd_replace(), row_vers_impl_x_locked_off_kernel(), row_vers_old_has_index_entry(), trx_undo_prev_version_build(), and trx_undo_rec_get_partial_row().

TRUE if this index is marked to be dropped in ha_innobase::prepare_drop_index(), otherwise FALSE

Definition at line 338 of file dict0mem.h.

id of the transaction that created this index, or 0 if the index existed when InnoDB was started up

Definition at line 365 of file dict0mem.h.

position of the trx id column in a clustered index record, if the fields before it are known to be of a fixed size, 0 otherwise

Definition at line 321 of file dict0mem.h.

Referenced by row_unlock_for_mysql().


The documentation for this struct was generated from the following file: