diff options
author | Igor Babaev <igor@askmonty.org> | 2012-04-11 20:44:52 -0700 |
---|---|---|
committer | Igor Babaev <igor@askmonty.org> | 2012-04-11 20:44:52 -0700 |
commit | 9e74665a2d91e299d1b9c5c2695855426aad78eb (patch) | |
tree | 9c865c2e18fcb814ef80e96965debf53a0923e6a /sql/sql_admin.cc | |
parent | 1c0a89afcc1581187e8ee84abbd445da2bfa45d9 (diff) | |
parent | 85a025f30c5196c22c5b1d7960912fe9b3f0d6c0 (diff) | |
download | mariadb-git-9e74665a2d91e299d1b9c5c2695855426aad78eb.tar.gz |
Merge 5.5 -> 5.5-mwl248.
Diffstat (limited to 'sql/sql_admin.cc')
-rw-r--r-- | sql/sql_admin.cc | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/sql/sql_admin.cc b/sql/sql_admin.cc index b33442d66b3..46637bf10a4 100644 --- a/sql/sql_admin.cc +++ b/sql/sql_admin.cc @@ -443,12 +443,7 @@ static bool mysql_admin_table(THD* thd, TABLE_LIST* tables, my_error(ER_PARTITION_MGMT_ON_NONPARTITIONED, MYF(0)); DBUG_RETURN(TRUE); } - uint num_parts_found; - uint num_parts_opt= alter_info->partition_names.elements; - num_parts_found= set_part_state(alter_info, table->table->part_info, - PART_ADMIN); - if (num_parts_found != num_parts_opt && - (!(alter_info->flags & ALTER_ALL_PARTITION))) + if (set_part_state(alter_info, table->table->part_info, PART_ADMIN)) { char buff[FN_REFLEN + MYSQL_ERRMSG_SIZE]; size_t length; @@ -910,6 +905,9 @@ send_result_message: DBUG_RETURN(FALSE); err: + /* Make sure this table instance is not reused after the failure. */ + if (table && table->table) + table->table->m_needs_reopen= true; trans_rollback_stmt(thd); trans_rollback(thd); close_thread_tables(thd); // Shouldn't be needed |