Commit 8867c0a5 authored by Konstantin Osipov's avatar Konstantin Osipov

Add comments to a few MDL deadlock-search related variables

and methods.

sql/mdl.cc:
  Add comments.
sql/mdl.h:
  Add a comment.
parent 5fa66315
......@@ -119,8 +119,18 @@ public:
victim(NULL),
current_search_depth(0)
{ }
/**
The context which has initiated the search. There
can be multiple searches happening in parallel at the same time.
*/
MDL_context *start;
/** If a deadlock is found, the context that identifies the victim. */
MDL_context *victim;
/** Set to the MAX_SEARCH_DEPTH at start. Decreased whenever
we descend into another MDL context (aka traverse to the next
wait-for graph node). When 0 is reached, we assume that
a deadlock is found, even if we have not found a loop.
*/
uint current_search_depth;
/**
Maximum depth for deadlock searches. After this depth is
......@@ -408,7 +418,7 @@ mdl_locks_key(const uchar *record, size_t *length,
statement, the design capitalizes on that to later save on
look ups in the table definition cache. This leads to reduced
contention overall and on LOCK_open in particular.
Please see the description of MDL_context::acquire_shared_lock()
Please see the description of MDL_context::acquire_lock_impl()
for details.
*/
......
......@@ -322,6 +322,7 @@ public:
DBUG_ASSERT(ticket == NULL);
type= type_arg;
}
/* A helper used to determine which lock request should be aborted. */
uint get_deadlock_weight() const;
static MDL_request *create(MDL_key::enum_mdl_namespace mdl_namespace,
......
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