summaryrefslogtreecommitdiff
path: root/sql/sql_statistics.h
diff options
context:
space:
mode:
authorMonty <monty@mariadb.org>2018-01-07 18:03:44 +0200
committerMonty <monty@mariadb.org>2018-01-30 21:33:55 +0200
commita7e352b54ddfaf91c92951d605cb02a4ffd2676b (patch)
treedc76f140342938ed2a0fe0e005100402762d5308 /sql/sql_statistics.h
parent921c5e931452301a09c84c53ffe35b81e6a1c71a (diff)
downloadmariadb-git-a7e352b54ddfaf91c92951d605cb02a4ffd2676b.tar.gz
Changed database, tablename and alias to be LEX_CSTRING
This was done in, among other things: - thd->db and thd->db_length - TABLE_LIST tablename, db, alias and schema_name - Audit plugin database name - lex->db - All db and table names in Alter_table_ctx - st_select_lex db Other things: - Changed a lot of functions to take const LEX_CSTRING* as argument for db, table_name and alias. See init_one_table() as an example. - Changed some function arguments from LEX_CSTRING to const LEX_CSTRING - Changed some lists from LEX_STRING to LEX_CSTRING - threads_mysql.result changed because process list_db wasn't always correctly updated - New append_identifier() function that takes LEX_CSTRING* as arguments - Added new element tmp_buff to Alter_table_ctx to separate temp name handling from temporary space - Ensure we store the length after my_casedn_str() of table/db names - Removed not used version of rename_table_in_stat_tables() - Changed Natural_join_column::table_name and db_name() to never return NULL (used for print) - thd->get_db() now returns db as a printable string (thd->db.str or "")
Diffstat (limited to 'sql/sql_statistics.h')
-rw-r--r--sql/sql_statistics.h18
1 files changed, 3 insertions, 15 deletions
diff --git a/sql/sql_statistics.h b/sql/sql_statistics.h
index eb59b149753..7ec742b70db 100644
--- a/sql/sql_statistics.h
+++ b/sql/sql_statistics.h
@@ -98,8 +98,8 @@ int delete_statistics_for_table(THD *thd, LEX_CSTRING *db, LEX_CSTRING *tab);
int delete_statistics_for_column(THD *thd, TABLE *tab, Field *col);
int delete_statistics_for_index(THD *thd, TABLE *tab, KEY *key_info,
bool ext_prefixes_only);
-int rename_table_in_stat_tables(THD *thd, LEX_CSTRING *db, LEX_CSTRING *tab,
- LEX_CSTRING *new_db, LEX_CSTRING *new_tab);
+int rename_table_in_stat_tables(THD *thd, const LEX_CSTRING *db, const LEX_CSTRING *tab,
+ const LEX_CSTRING *new_db, const LEX_CSTRING *new_tab);
int rename_column_in_stat_tables(THD *thd, TABLE *tab, Field *col,
const char *new_name);
void set_statistics_for_table(THD *thd, TABLE *table);
@@ -110,7 +110,7 @@ double get_column_range_cardinality(Field *field,
key_range *min_endp,
key_range *max_endp,
uint range_flag);
-bool is_stat_table(const char *db, const char *table);
+bool is_stat_table(const LEX_CSTRING *db, LEX_CSTRING *table);
class Histogram
{
@@ -255,18 +255,6 @@ public:
class Columns_statistics;
class Index_statistics;
-static inline
-int rename_table_in_stat_tables(THD *thd, const char *db, const char *tab,
- const char *new_db, const char *new_tab)
-{
- LEX_CSTRING od= { db, strlen(db) };
- LEX_CSTRING ot= { tab, strlen(tab) };
- LEX_CSTRING nd= { new_db, strlen(new_db) };
- LEX_CSTRING nt= { new_tab, strlen(new_tab) };
- return rename_table_in_stat_tables(thd, &od, &ot, &nd, &nt);
-}
-
-
/* Statistical data on a table */
class Table_statistics