Commit 8113adc5 authored by Dmitry Lenev's avatar Dmitry Lenev

A follow-up for the patch which implemented new

type-of-operation-aware metadata locks and added a
wait-for graph based deadlock detector to the MDL
subsystem (this patch fixed bug #46272 "MySQL 5.4.4,
new MDL: unnecessary deadlock" and bug #37346
"innodb does not detect deadlock between update and
alter table").

Removed unused and redundant method.
parent 5a362b46
......@@ -1140,36 +1140,6 @@ bool MDL_ticket::is_incompatible_when_waiting(enum_mdl_type type) const
}
/**
Acquire global intention exclusive lock.
@param[in] mdl_request Lock request object for lock to be acquired
@retval FALSE Success. The lock has been acquired.
@retval TRUE Error.
*/
bool
MDL_context::acquire_global_intention_exclusive_lock(MDL_request *mdl_request)
{
DBUG_ASSERT(mdl_request->key.mdl_namespace() == MDL_key::GLOBAL &&
mdl_request->type == MDL_INTENTION_EXCLUSIVE);
/*
If this is a non-recursive attempt to acquire global intention
exclusive lock we might have to wait until active global shared
lock or pending requests will go away. Since we won't hold any
resources (except associated with open HANDLERs) while doing it
deadlocks are not possible.
*/
DBUG_ASSERT(is_lock_owner(MDL_key::GLOBAL, "", "", MDL_INTENTION_EXCLUSIVE) ||
! has_locks() ||
(m_trans_sentinel && m_tickets.front() == m_trans_sentinel));
return acquire_lock(mdl_request);
}
/**
Check whether the context already holds a compatible lock ticket
on an object.
......
......@@ -515,8 +515,6 @@ class MDL_context
inline THD *get_thd() const { return m_thd; }
bool acquire_global_intention_exclusive_lock(MDL_request *mdl_request);
/**
Wake up context which is waiting for a change of MDL_lock state.
*/
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment