diff options
author | unknown <bell@sanja.is.com.ua> | 2003-01-25 13:19:46 +0200 |
---|---|---|
committer | unknown <bell@sanja.is.com.ua> | 2003-01-25 13:19:46 +0200 |
commit | fbd882fca6902e5038bef1d25c1afbfad892d09a (patch) | |
tree | 088681536e968628003ae711fd14a8df01b404ac /sql/sql_class.h | |
parent | 433307fafb1bc315a4e92c995f50d052c8d5eb36 (diff) | |
parent | b23541339c389e452b3d643c249afd4e7fb4899f (diff) | |
download | mariadb-git-fbd882fca6902e5038bef1d25c1afbfad892d09a.tar.gz |
merging
sql/item.cc:
Auto merged
sql/item_cmpfunc.cc:
Auto merged
sql/item_cmpfunc.h:
Auto merged
sql/item_sum.cc:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_delete.cc:
Auto merged
sql/sql_insert.cc:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_list.h:
Auto merged
sql/sql_load.cc:
Auto merged
sql/sql_olap.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_select.h:
Auto merged
sql/sql_table.cc:
Auto merged
sql/sql_union.cc:
Auto merged
sql/sql_update.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
Diffstat (limited to 'sql/sql_class.h')
-rw-r--r-- | sql/sql_class.h | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/sql/sql_class.h b/sql/sql_class.h index 216720da801..e33ccb82cff 100644 --- a/sql/sql_class.h +++ b/sql/sql_class.h @@ -394,7 +394,7 @@ struct system_variables CHARSET_INFO *thd_charset; }; - +void free_tmp_table(THD *thd, TABLE *entry); /* For each client connection we create a separate thread with THD serving as a thread/connection descriptor @@ -507,6 +507,7 @@ public: USER_CONN *user_connect; CHARSET_INFO *db_charset; List<Item> *possible_loops; // Items that may cause loops in subselects + List<TABLE> temporary_tables_should_be_free; // list of temporary tables List <MYSQL_ERROR> warn_list; uint warn_count[(uint) MYSQL_ERROR::WARN_LEVEL_END]; uint total_warn_count, old_total_warn_count; @@ -662,6 +663,17 @@ public: #endif void add_possible_loop(Item *); + void free_tmp_tables() + { + if (temporary_tables_should_be_free.elements) + { + List_iterator_fast<TABLE> lt(temporary_tables_should_be_free); + TABLE *table; + while ((table= lt++)) + free_tmp_table(this,table); + temporary_tables_should_be_free.empty(); + } + } }; /* |