From 7681c6aa787f9d3402059957bd8d993997cb623b Mon Sep 17 00:00:00 2001 From: unknown Date: Thu, 17 Oct 2013 14:11:19 +0200 Subject: MDEV-4506: Parallel replication: Intermediate commit. Fix some part of update of old-style coordinates in parallel replication: - Ignore XtraDB request for old-style coordinates, not meaningful for parallel replication (must use GTID to get crash-safe parallel slave). - Only update relay log coordinates forward, not backwards, to ensure that parallel threads do not conflict with each other. - Move future_event_relay_log_pos to rgi. --- sql/rpl_parallel.cc | 2 ++ 1 file changed, 2 insertions(+) (limited to 'sql/rpl_parallel.cc') diff --git a/sql/rpl_parallel.cc b/sql/rpl_parallel.cc index 19ae2a35339..fbf135c0bb6 100644 --- a/sql/rpl_parallel.cc +++ b/sql/rpl_parallel.cc @@ -64,6 +64,7 @@ rpt_handle_event(rpl_parallel_thread::queued_event *qev, /* ToDo: Access to thd, and what about rli, split out a parallel part? */ mysql_mutex_lock(&rli->data_lock); qev->ev->thd= thd; + rgi->future_event_relay_log_pos= qev->future_event_relay_log_pos; err= apply_event_and_update_pos(qev->ev, thd, rgi, rpt); thd->rgi_slave= NULL; @@ -659,6 +660,7 @@ rpl_parallel::do_event(rpl_group_info *serial_rgi, Log_event *ev) } qev->ev= ev; qev->next= NULL; + qev->future_event_relay_log_pos= rli->future_event_relay_log_pos; if (typ == GTID_EVENT) { -- cgit v1.2.1