diff options
author | unknown <monty@mashka.mysql.fi> | 2002-10-02 17:55:12 +0300 |
---|---|---|
committer | unknown <monty@mashka.mysql.fi> | 2002-10-02 17:55:12 +0300 |
commit | 95e772b65678b182bff5b52f3f5386d894419147 (patch) | |
tree | a7ce8fe730bd0e06166bb15edcbe5aef252c2c3b /sql/table.h | |
parent | ff8f00774a6ad48b1b06ab498e415676d3fb707f (diff) | |
parent | 896bc7d08912a605d7c9ac9790a7bbf95d34ff08 (diff) | |
download | mariadb-git-95e772b65678b182bff5b52f3f5386d894419147.tar.gz |
Merge with 4.0.4
BitKeeper/etc/logging_ok:
auto-union
client/mysqldump.c:
Auto merged
include/Makefile.am:
Auto merged
include/my_base.h:
Auto merged
include/my_sys.h:
Auto merged
include/sslopt-case.h:
Auto merged
libmysql/libmysql.c:
Auto merged
libmysql/libmysql.def:
Auto merged
libmysqld/lib_sql.cc:
Auto merged
myisam/ft_boolean_search.c:
Auto merged
myisam/mi_check.c:
Auto merged
myisam/mi_create.c:
Auto merged
myisam/myisamchk.c:
Auto merged
mysql-test/mysql-test-run.sh:
Auto merged
mysql-test/r/create.result:
Auto merged
mysql-test/r/innodb.result:
Auto merged
mysql-test/r/myisam.result:
Auto merged
mysql-test/r/select.result:
Auto merged
mysql-test/r/type_set.result:
Auto merged
mysql-test/t/create.test:
Auto merged
mysql-test/t/myisam.test:
Auto merged
sql/Makefile.am:
Auto merged
sql/filesort.cc:
Auto merged
sql/ha_innodb.cc:
Auto merged
sql/ha_myisam.cc:
Auto merged
sql/handler.h:
Auto merged
sql/item_cmpfunc.cc:
Auto merged
sql/item_strfunc.cc:
Auto merged
sql/item_strfunc.h:
Auto merged
sql/lex.h:
Auto merged
sql/log.cc:
Auto merged
sql/log_event.cc:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/mysqld.cc:
Auto merged
sql/net_pkg.cc:
Auto merged
sql/net_serv.cc:
Auto merged
sql/opt_range.cc:
Auto merged
sql/set_var.h:
Auto merged
sql/slave.cc:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_insert.cc:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_load.cc:
Auto merged
sql/share/english/errmsg.txt:
Auto merged
sql/sql_table.cc:
Auto merged
sql/sql_udf.cc:
Auto merged
sql/sql_union.cc:
Auto merged
sql/unireg.h:
Auto merged
sql/sql_cache.cc:
Code cleanup (removed ifdef)
Diffstat (limited to 'sql/table.h')
-rw-r--r-- | sql/table.h | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/sql/table.h b/sql/table.h index ca86269b625..b9ebeda160a 100644 --- a/sql/table.h +++ b/sql/table.h @@ -105,6 +105,7 @@ struct st_table { *rowid_field; Field_timestamp *timestamp_field; my_string comment; /* Comment about table */ + CHARSET_INFO *table_charset; /* Default charset of string fields */ REGINFO reginfo; /* field connections */ MEM_ROOT mem_root; GRANT_INFO grant; @@ -142,9 +143,18 @@ typedef struct st_table_list 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; - TABLE *table; - GRANT_INFO grant; + List<String> *use_index, *ignore_index; + /* + Usually hold reference on opened table, but may hold reference + to node of complete list of tables used in UNION & subselect. + */ + union + { + TABLE *table; /* opened table */ + st_table_list *table_list; /* pointer to node of list of all tables */ + }; + void *derived; /* SELECT_LEX_UNIT of derived table */ + GRANT_INFO grant; thr_lock_type lock_type; uint outer_join; /* Which join type */ uint32 db_length, real_name_length; @@ -154,7 +164,6 @@ typedef struct st_table_list bool do_redirect; /* To get the struct in UNION's */ } TABLE_LIST; - typedef struct st_changed_table_list { struct st_changed_table_list *next; @@ -162,7 +171,6 @@ typedef struct st_changed_table_list uint32 key_length; } CHANGED_TABLE_LIST; - typedef struct st_open_table_list { struct st_open_table_list *next; |