summaryrefslogtreecommitdiff
path: root/sql/rpl_rli.cc
diff options
context:
space:
mode:
authorMonty <monty@mariadb.org>2016-08-22 10:16:00 +0300
committerMonty <monty@mariadb.org>2016-08-22 10:16:00 +0300
commitb51109693e6abb0e58256192a648cdd158d47615 (patch)
treebf6e2bb8e171c21f7f78adc056a009c6164e3fe4 /sql/rpl_rli.cc
parent5932fa789043fad1602a5ebb335adf4e7c860cdf (diff)
downloadmariadb-git-b51109693e6abb0e58256192a648cdd158d47615.tar.gz
MDEV-10630 rpl.rpl_mdev6020 fails in buildbot with timeout
The issue was that when running with valgrind the wait for master_pos_Wait() was not long enough. This patch also fixes two other failures that could affect rpl_mdev6020: - check_if_conflicting_replication_locks() didn't properly check domains - 'did_mark_start_commit' was after signals to other threads was sent which could get the variable read too early.
Diffstat (limited to 'sql/rpl_rli.cc')
-rw-r--r--sql/rpl_rli.cc6
1 files changed, 3 insertions, 3 deletions
diff --git a/sql/rpl_rli.cc b/sql/rpl_rli.cc
index 1fc92d4ecec..4aed8cdcd94 100644
--- a/sql/rpl_rli.cc
+++ b/sql/rpl_rli.cc
@@ -1921,8 +1921,8 @@ rpl_group_info::mark_start_commit_no_lock()
{
if (did_mark_start_commit)
return;
- mark_start_commit_inner(parallel_entry, gco, this);
did_mark_start_commit= true;
+ mark_start_commit_inner(parallel_entry, gco, this);
}
@@ -1933,12 +1933,12 @@ rpl_group_info::mark_start_commit()
if (did_mark_start_commit)
return;
+ did_mark_start_commit= true;
e= this->parallel_entry;
mysql_mutex_lock(&e->LOCK_parallel_entry);
mark_start_commit_inner(e, gco, this);
mysql_mutex_unlock(&e->LOCK_parallel_entry);
- did_mark_start_commit= true;
}
@@ -1981,12 +1981,12 @@ rpl_group_info::unmark_start_commit()
if (!did_mark_start_commit)
return;
+ did_mark_start_commit= false;
e= this->parallel_entry;
mysql_mutex_lock(&e->LOCK_parallel_entry);
--e->count_committing_event_groups;
mysql_mutex_unlock(&e->LOCK_parallel_entry);
- did_mark_start_commit= false;
}