1
0
mirror of https://github.com/MariaDB/server.git synced 2025-12-24 11:21:21 +03:00

Backport of:

----------------------------------------------------------
revno: 2617.23.20
committer: Konstantin Osipov <kostja@sun.com>
branch nick: mysql-6.0-runtime
timestamp: Wed 2009-03-04 16:31:31 +0300
message:
  WL#4284 "Transactional DDL locking"
  Review comments: "Objectify" the MDL API.
  MDL_request and MDL_context still need manual construction and
  destruction, since they are used in environment that is averse
  to constructors/destructors.


sql/mdl.cc:
  Improve comments.
  Add asserts to backup()/restore_from_backup()/merge() methods.
  Fix an order bug in the error path of mdl_acquire_exclusive_locks():
  we used to first free a ticket object, and only then exclude
  it from the list of tickets.
This commit is contained in:
Konstantin Osipov
2009-12-04 02:52:05 +03:00
parent 97abce0e7c
commit a9013f8fba
20 changed files with 829 additions and 797 deletions

View File

@@ -1050,8 +1050,8 @@ THD::~THD()
if (!cleanup_done)
cleanup();
mdl_context_destroy(&mdl_context);
mdl_context_destroy(&handler_mdl_context);
mdl_context.destroy();
handler_mdl_context.destroy();
ha_close_connection(this);
plugin_thdvar_cleanup(this);
@@ -3033,8 +3033,8 @@ void THD::restore_backup_open_tables_state(Open_tables_state *backup)
lock == 0 &&
locked_tables_mode == LTM_NONE &&
m_reprepare_observer == NULL);
mdl_context_destroy(&mdl_context);
mdl_context_destroy(&handler_mdl_context);
mdl_context.destroy();
handler_mdl_context.destroy();
set_open_tables_state(backup);
DBUG_VOID_RETURN;