diff options
author | kevin.lewis@oracle.com <> | 2013-02-27 12:44:58 -0600 |
---|---|---|
committer | kevin.lewis@oracle.com <> | 2013-02-27 12:44:58 -0600 |
commit | aeb9e7d8146e286b0d68f80dda0d5d3893ab9f86 (patch) | |
tree | ce7f65b2d3bbf6b19160920e051ff288d35bbd94 /sql/item_cmpfunc.cc | |
parent | 39d39c3bc2831bb6c14ed8ad07c9454eb4d47f53 (diff) | |
download | mariadb-git-aeb9e7d8146e286b0d68f80dda0d5d3893ab9f86.tar.gz |
Bug #16305265 HANG IN RENAME TABLE
This is a deadlock that will also be fixed in the server by
Bug #11844915 - HANG IN THDVAR MUTEX ACQUISITION.
So this is a simple alternate method of fixing the same problem,
but from within InnoDB.
The simple change is to make rename table start a transaction
before locking dict_sys->mutex since thd_supports_xa() can call
THDVAR which can lock a mutex, LOCK_global_system_variables, that
is used in the server by many other activities. At least one of
those, sys_var::update(), can call back into InnoDB and try to
lock dict_sys->mutex while holding LOCK_global_system_variables.
The other bug fix for 11844915 eliminates the use of
LOCK_global_system_variables for calls to THDVAR.
Approved by marko in http://rb.no.oracle.com/rb/r/2000/
Diffstat (limited to 'sql/item_cmpfunc.cc')
0 files changed, 0 insertions, 0 deletions