summaryrefslogtreecommitdiff
path: root/sql/log.cc
diff options
context:
space:
mode:
authorguilhem@mysql.com <>2003-03-17 22:51:56 +0100
committerguilhem@mysql.com <>2003-03-17 22:51:56 +0100
commit87e1c552ed7e1e4c1ce65c0c7ba18291f1b3915f (patch)
tree5d9a0eaa1fe759e9fccf20738544fe2eab9bbbe8 /sql/log.cc
parent7761805ecb0055933ce4141f83f8315f9879cf5a (diff)
downloadmariadb-git-87e1c552ed7e1e4c1ce65c0c7ba18291f1b3915f.tar.gz
New variable rli->ignore_log_space_limit to resolve
a deadlock between I/O and SQL threads in replication when relay_log_space is too small. This fixes bug #79.
Diffstat (limited to 'sql/log.cc')
-rw-r--r--sql/log.cc2
1 files changed, 2 insertions, 0 deletions
diff --git a/sql/log.cc b/sql/log.cc
index 27864e19c03..9befcaefb01 100644
--- a/sql/log.cc
+++ b/sql/log.cc
@@ -645,6 +645,8 @@ int MYSQL_LOG::purge_first_log(struct st_relay_log_info* rli)
*/
pthread_mutex_lock(&rli->log_space_lock);
rli->log_space_total -= rli->relay_log_pos;
+ //tell the I/O thread to take the relay_log_space_limit into account
+ rli->ignore_log_space_limit= 0;
pthread_mutex_unlock(&rli->log_space_lock);
pthread_cond_broadcast(&rli->log_space_cond);