diff options
author | Oleksandr Byelkin <sanja@mariadb.com> | 2019-10-31 10:58:06 +0100 |
---|---|---|
committer | Oleksandr Byelkin <sanja@mariadb.com> | 2019-10-31 10:58:06 +0100 |
commit | 55b2281a5da38f66dca5e2180672f570c33676df (patch) | |
tree | 9cbb719b71ff8f29e657ff1d468f4270c714d5b5 /sql/sql_statistics.cc | |
parent | d6d621cec18251b55202bbd362315b3c1ed90181 (diff) | |
parent | 259edb1f60b5d4e9061a81e90c5a8ec9d0741751 (diff) | |
download | mariadb-git-55b2281a5da38f66dca5e2180672f570c33676df.tar.gz |
Merge branch '10.2' into 10.3
Diffstat (limited to 'sql/sql_statistics.cc')
-rw-r--r-- | sql/sql_statistics.cc | 13 |
1 files changed, 5 insertions, 8 deletions
diff --git a/sql/sql_statistics.cc b/sql/sql_statistics.cc index 685e2162d81..a928b9e266e 100644 --- a/sql/sql_statistics.cc +++ b/sql/sql_statistics.cc @@ -254,10 +254,8 @@ index_stat_def= {INDEX_STAT_N_FIELDS, index_stat_fields, 4, index_stat_pk_col}; Open all statistical tables and lock them */ -static -inline int open_stat_tables(THD *thd, TABLE_LIST *tables, - Open_tables_backup *backup, - bool for_write) +static int open_stat_tables(THD *thd, TABLE_LIST *tables, + Open_tables_backup *backup, bool for_write) { int rc; @@ -265,12 +263,14 @@ inline int open_stat_tables(THD *thd, TABLE_LIST *tables, thd->push_internal_handler(&deh); init_table_list_for_stat_tables(tables, for_write); init_mdl_requests(tables); + thd->in_sub_stmt|= SUB_STMT_STAT_TABLES; rc= open_system_tables_for_read(thd, tables, backup); + thd->in_sub_stmt&= ~SUB_STMT_STAT_TABLES; thd->pop_internal_handler(); /* If the number of tables changes, we should revise the check below. */ - DBUG_ASSERT(STATISTICS_TABLES == 3); + compile_time_assert(STATISTICS_TABLES == 3); if (!rc && (stat_table_intact.check(tables[TABLE_STAT].table, &table_stat_def) || @@ -3270,10 +3270,7 @@ int read_statistics_for_tables(THD *thd, TABLE_LIST *tables) DBUG_RETURN(0); if (open_stat_tables(thd, stat_tables, &open_tables_backup, FALSE)) - { - thd->clear_error(); DBUG_RETURN(1); - } for (TABLE_LIST *tl= tables; tl; tl= tl->next_global) { |