diff options
author | unknown <knielsen@knielsen-hq.org> | 2012-05-08 14:27:44 +0200 |
---|---|---|
committer | unknown <knielsen@knielsen-hq.org> | 2012-05-08 14:27:44 +0200 |
commit | ddd3e261b253856720bd9dc2343a655ecc297e81 (patch) | |
tree | ee6d838b1a255aebf7b35a839d6e992323e35c1b /sql | |
parent | 0887c6b9d35005e136260b83da8cfe4e9cd270b7 (diff) | |
download | mariadb-git-ddd3e261b253856720bd9dc2343a655ecc297e81.tar.gz |
MDEV-254: Server hang with FLUSH TABLES WITH READ LOCK AND DISABLE CHECKPOINT
The code to re-enable checkpointing after UNLOCK TABLES was lost in the 5.5
merge, so re-add it back in.
Diffstat (limited to 'sql')
-rw-r--r-- | sql/lock.cc | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/sql/lock.cc b/sql/lock.cc index c5a4674bfb0..3a1a6d41ce3 100644 --- a/sql/lock.cc +++ b/sql/lock.cc @@ -1041,6 +1041,15 @@ void Global_read_lock::unlock_global_read_lock(THD *thd) DBUG_ASSERT(m_mdl_global_shared_lock && m_state); + if (thd->global_disable_checkpoint) + { + thd->global_disable_checkpoint= 0; + if (!--global_disable_checkpoint) + { + ha_checkpoint_state(0); // Enable checkpoints + } + } + if (m_mdl_blocks_commits_lock) { thd->mdl_context.release_lock(m_mdl_blocks_commits_lock); |