InnoDB Plugin
1.0
|
#include <dict0mem.h>
Data Fields | |
index_id_t | id |
mem_heap_t * | heap |
const char * | name |
const char * | table_name |
dict_table_t * | table |
unsigned | space:32 |
unsigned | page:32 |
unsigned | type:DICT_IT_BITS |
unsigned | trx_id_offset:MAX_KEY_LENGTH_BITS |
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 |
unsigned | online_status:2 |
dict_field_t * | fields |
ut_list_node< dict_index_t > | indexes |
btr_search_t * | search_info |
row_log_t * | online_log |
rw_lock_t | lock |
trx_id_t | trx_id |
zip_pad_info_t | zip_pad |
ulint | magic_n |
ib_uint64_t * | stat_n_diff_key_vals |
ib_uint64_t * | stat_n_sample_sizes |
ib_uint64_t * | stat_n_non_null_key_vals |
ulint | stat_index_size |
ulint | stat_n_leaf_pages |
Data structure for an index. Most fields will be
initialized to 0, NULL or FALSE in dict_mem_index_create().
unsigned dict_index_t::cached |
TRUE if the index object is in the dictionary cache
dict_field_t* dict_index_t::fields |
array of field descriptions
mem_heap_t* dict_index_t::heap |
memory heap
index_id_t dict_index_t::id |
id of the index
ut_list_node< dict_index_t > dict_index_t::indexes |
list of indexes of the table
rw_lock_t dict_index_t::lock |
read-write lock protecting the upper levels of the index tree
ulint dict_index_t::magic_n |
magic number
unsigned dict_index_t::n_def |
number of fields defined so far
unsigned dict_index_t::n_fields |
number of fields in the index
unsigned dict_index_t::n_nullable |
number of nullable fields
unsigned dict_index_t::n_uniq |
number of fields from the beginning which are enough to determine an index entry uniquely
unsigned dict_index_t::n_user_defined_cols |
number of columns the user defined to be in the index: in the internal representation we add more columns
const char* dict_index_t::name |
index name
row_log_t* dict_index_t::online_log |
the log of modifications during online index creation; valid when online_status is ONLINE_INDEX_CREATION
unsigned dict_index_t::online_status |
enum online_index_status. Transitions from ONLINE_INDEX_COMPLETE (to ONLINE_INDEX_CREATION) are protected by dict_operation_lock and dict_sys->mutex. Other changes are protected by index->lock.
unsigned dict_index_t::page |
index tree root page number
btr_search_t* dict_index_t::search_info |
info used in optimistic searches
unsigned dict_index_t::space |
space where the index tree is placed
ulint dict_index_t::stat_index_size |
approximate index size in database pages
ib_uint64_t* dict_index_t::stat_n_diff_key_vals |
Statistics for query optimization approximate number of different key values for this index, for each n-column prefix where 1 <= n <= dict_get_n_unique(index) (the array is indexed from 0 to n_uniq-1); we periodically calculate new estimates
ulint dict_index_t::stat_n_leaf_pages |
approximate number of leaf pages in the index tree
ib_uint64_t* dict_index_t::stat_n_sample_sizes |
number of pages that were sampled to calculate each of stat_n_diff_key_vals[], e.g. stat_n_sample_sizes[3] pages were sampled to get the number stat_n_diff_key_vals[3].
dict_table_t* dict_index_t::table |
back pointer to table
const char* dict_index_t::table_name |
table name
unsigned dict_index_t::to_be_dropped |
TRUE if the index is to be dropped; protected by dict_operation_lock
trx_id_t dict_index_t::trx_id |
id of the transaction that created this index, or 0 if the index existed when InnoDB was started up
unsigned dict_index_t::trx_id_offset |
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
unsigned dict_index_t::type |
index type (DICT_CLUSTERED, DICT_UNIQUE, DICT_UNIVERSAL, DICT_IBUF, DICT_CORRUPT)
zip_pad_info_t dict_index_t::zip_pad |
Information about state of compression failures and successes