summaryrefslogtreecommitdiff
path: root/sql/table.h
diff options
context:
space:
mode:
Diffstat (limited to 'sql/table.h')
-rw-r--r--sql/table.h39
1 files changed, 21 insertions, 18 deletions
diff --git a/sql/table.h b/sql/table.h
index 3b8a62a09b5..d09194442c8 100644
--- a/sql/table.h
+++ b/sql/table.h
@@ -37,8 +37,8 @@ typedef struct st_grant_info
{
GRANT_TABLE *grant_table;
uint version;
- uint privilege;
- uint want_privilege;
+ ulong privilege;
+ ulong want_privilege;
} GRANT_INFO;
enum tmp_table_type {NO_TMP_TABLE=0, TMP_TABLE=1, TRANSACTIONAL_TMP_TABLE=2};
@@ -61,7 +61,8 @@ struct st_table {
uint uniques;
uint null_fields; /* number of null fields */
uint blob_fields; /* number of blob fields */
- key_map keys_in_use, keys_in_use_for_query;
+ key_map keys_in_use, keys_for_keyread;
+ key_map quick_keys, used_keys, keys_in_use_for_query;
KEY *key_info; /* data of keys in database */
TYPELIB keynames; /* Pointers to keynames */
ha_rows max_rows; /* create information */
@@ -90,7 +91,7 @@ struct st_table {
my_bool null_row; /* All columns are null */
my_bool maybe_null,outer_join; /* Used with OUTER JOIN */
my_bool distinct,const_table,no_rows;
- my_bool key_read;
+ my_bool key_read, bulk_insert;
my_bool crypted;
my_bool db_low_byte_first; /* Portable row format */
my_bool locked_by_flush;
@@ -120,7 +121,6 @@ struct st_table {
byte *record_pointers; /* If sorted in memory */
ha_rows found_records; /* How many records in sort */
ORDER *group;
- key_map quick_keys, used_keys;
ha_rows quick_rows[MAX_KEY];
uint quick_key_parts[MAX_KEY];
key_part_map const_key_parts[MAX_KEY];
@@ -139,12 +139,12 @@ struct st_table {
#define JOIN_TYPE_LEFT 1
#define JOIN_TYPE_RIGHT 2
-typedef struct st_table_list {
+typedef struct st_table_list
+{
struct st_table_list *next;
- char *db,*name,*real_name;
- uint32 db_length, real_name_length;
- Item *on_expr; /* Used with outer join */
- struct st_table_list *natural_join; /* natural join on this table*/
+ char *db, *alias, *real_name;
+ Item *on_expr; /* Used with outer join */
+ struct st_table_list *natural_join; /* natural join on this table*/
/* ... join ... USE INDEX ... IGNORE INDEX */
List<String> *use_index, *ignore_index;
/*
@@ -156,18 +156,21 @@ typedef struct st_table_list {
TABLE *table; /* opened table */
st_table_list *table_list; /* pointer to node of list of all tables */
};
- GRANT_INFO grant;
+ void *derived; /* SELECT_LEX_UNIT of derived table */
+ GRANT_INFO grant;
thr_lock_type lock_type;
- uint outer_join; /* Which join type */
- bool straight; /* optimize with prev table */
- bool updating; /* for replicate-do/ignore table */
- bool shared; /* Used twice in union */
- void *derived; /* SELECT_LEX_UNIT of derived table */
+ uint outer_join; /* Which join type */
+ uint32 db_length, real_name_length;
+ bool straight; /* optimize with prev table */
+ bool updating; /* for replicate-do/ignore table */
+ bool shared; /* Used twice in union */
+ bool do_redirect; /* To get the struct in UNION's */
} TABLE_LIST;
-typedef struct st_changed_table_list {
+typedef struct st_changed_table_list
+{
struct st_changed_table_list *next;
- char *key, *table_name;
+ char *key;
uint32 key_length;
} CHANGED_TABLE_LIST;