diff options
Diffstat (limited to 'storage/innobase/include/dict0mem.h')
-rw-r--r-- | storage/innobase/include/dict0mem.h | 36 |
1 files changed, 14 insertions, 22 deletions
diff --git a/storage/innobase/include/dict0mem.h b/storage/innobase/include/dict0mem.h index 7eec86d0bcb..ab07213de3b 100644 --- a/storage/innobase/include/dict0mem.h +++ b/storage/innobase/include/dict0mem.h @@ -29,12 +29,9 @@ Created 1/8/1996 Heikki Tuuri combination of types */ #define DICT_CLUSTERED 1 /* clustered index */ #define DICT_UNIQUE 2 /* unique index */ -#define DICT_UNIVERSAL 4 /* index which can contain records from any +#define DICT_UNIVERSAL 4 /* index which can contain records from any other index */ -#define DICT_IBUF 8 /* insert buffer tree */ - -/* Flags for ordering an index field: OR'ing of the flags allowed */ -#define DICT_DESCEND 1 /* in descending order (default ascending) */ +#define DICT_IBUF 8 /* insert buffer tree */ /* Types for a table object */ #define DICT_TABLE_ORDINARY 1 @@ -42,6 +39,9 @@ combination of types */ #define DICT_TABLE_CLUSTER 3 /* this means that the table is really a cluster definition */ +/* Table flags */ +#define DICT_TF_COMPACT 1 /* compact page format */ + /************************************************************************** Creates a table memory object. */ @@ -55,7 +55,7 @@ dict_mem_table_create( is ignored if the table is made a member of a cluster */ ulint n_cols, /* in: number of columns */ - ibool comp); /* in: TRUE=compact page format */ + ulint flags); /* in: table flags */ /************************************************************************** Creates a cluster memory object. */ @@ -116,8 +116,6 @@ dict_mem_index_add_field( /*=====================*/ dict_index_t* index, /* in: index */ const char* name, /* in: column name */ - ulint order, /* in: order criterion; 0 means an - ascending order */ ulint prefix_len); /* in: 0 or the column prefix length in a MySQL index like INDEX (textcol(25)) */ @@ -148,7 +146,7 @@ struct dict_col_struct{ const char* name; /* name */ dtype_t type; /* data type */ dict_table_t* table; /* back pointer to table of this column */ - ulint aux; /* this is used as an auxiliary variable + ulint aux; /* this is used as an auxiliary variable in some of the functions below */ }; @@ -163,8 +161,6 @@ UTF-8 charset. In that charset, a character may take at most 3 bytes. */ struct dict_field_struct{ dict_col_t* col; /* pointer to the table column */ const char* name; /* name of the column */ - ulint order; /* flags for ordering this field: - DICT_DESCEND, ... */ ulint prefix_len; /* 0 or the length of the column prefix in bytes in a MySQL index of type, e.g., INDEX (textcol(25)); @@ -175,10 +171,6 @@ struct dict_field_struct{ ulint fixed_len; /* 0 or the fixed length of the column if smaller than DICT_MAX_INDEX_COL_LEN */ - ulint fixed_offs; /* offset to the field, or - ULINT_UNDEFINED if it is not fixed - within the record (due to preceding - variable-length fields) */ }; /* Data structure for an index tree */ @@ -280,7 +272,7 @@ struct dict_foreign_struct{ constraint is defined: we allow the indexes to contain more fields than mentioned in the constraint, as long - as the first fields are as mentioned */ + as the first fields are as mentioned */ dict_index_t* foreign_index; /* foreign index; we require that both tables contain explicitly defined indexes for the constraint: InnoDB @@ -311,6 +303,7 @@ a foreign key constraint is enforced, therefore RESTRICT just means no flag */ struct dict_table_struct{ dulint id; /* id of the table or cluster */ ulint type; /* DICT_TABLE_ORDINARY, ... */ + ulint flags; /* DICT_TF_COMPACT, ... */ mem_heap_t* heap; /* memory heap */ const char* name; /* table name */ const char* dir_path_of_temp_table;/* NULL or the directory path @@ -328,7 +321,6 @@ struct dict_table_struct{ ibool tablespace_discarded;/* this flag is set TRUE when the user calls DISCARD TABLESPACE on this table, and reset to FALSE in IMPORT TABLESPACE */ - ibool comp; /* flag: TRUE=compact page format */ hash_node_t name_hash; /* hash chain node */ hash_node_t id_hash; /* hash chain node */ ulint n_def; /* number of columns defined so far */ @@ -345,7 +337,7 @@ struct dict_table_struct{ which refer to this table */ UT_LIST_NODE_T(dict_table_t) table_LRU; /* node of the LRU list of tables */ - ulint mem_fix;/* count of how many times the table + ulint mem_fix;/* count of how many times the table and its indexes has been fixed in memory; currently NOT used */ ulint n_mysql_handles_opened; @@ -408,9 +400,9 @@ struct dict_table_struct{ database pages */ ulint stat_sum_of_other_index_sizes; /* other indexes in database pages */ - ibool stat_initialized; /* TRUE if statistics have + ibool stat_initialized; /* TRUE if statistics have been calculated the first time - after database startup or table creation */ + after database startup or table creation */ ulint stat_modified_counter; /* when a row is inserted, updated, or deleted, we add 1 to this number; we calculate new @@ -432,11 +424,11 @@ struct dict_table_struct{ inited; MySQL gets the init value by executing SELECT MAX(auto inc column) */ ib_longlong autoinc;/* autoinc counter value to give to the - next inserted row */ + next inserted row */ ulint magic_n;/* magic number */ }; #define DICT_TABLE_MAGIC_N 76333786 - + #ifndef UNIV_NONINL #include "dict0mem.ic" #endif |