#At file:///home/andrei/MySQL/BZR/2a-23May/WL/mysql-next-mr-wl5569/ based on revid:andrei.elkin@stripped
3215 Andrei Elkin 2010-11-22
wl#5569
extinding futher interfaces to wl#5599 with propagating future_event_relay_log_pos
to the Worker exec context.
@ sql/log_event.cc
extract the stored future_event_relay_log_pos to copy to worker rli.
@ sql/rpl_slave.cc
Store future_event_relay_log_pos into event member.
modified:
sql/log_event.cc
sql/log_event.h
sql/rpl_slave.cc
=== modified file 'sql/log_event.cc'
--- a/sql/log_event.cc 2010-11-20 17:23:42 +0000
+++ b/sql/log_event.cc 2010-11-22 18:57:13 +0000
@@ -2497,6 +2497,7 @@ int slave_worker_exec_job(Slave_worker *
w->slave_worker_ends_group(ev->mts_group_cnt);
}
+ w->w_rli->set_future_event_relay_log_pos(ev->future_event_relay_log_pos);
error= ev->do_apply_event(rli);
mysql_mutex_lock(&w->jobs_lock);
=== modified file 'sql/log_event.h'
--- a/sql/log_event.h 2010-11-19 14:51:58 +0000
+++ b/sql/log_event.h 2010-11-22 18:57:13 +0000
@@ -999,6 +999,9 @@ public:
*/
ulong mts_group_cnt;
+ /* a copy of the main rli value stored into event to pass to MTS worker rli */
+ ulonglong future_event_relay_log_pos;
+
#ifdef MYSQL_SERVER
THD* thd;
=== modified file 'sql/rpl_slave.cc'
--- a/sql/rpl_slave.cc 2010-11-20 17:23:42 +0000
+++ b/sql/rpl_slave.cc 2010-11-22 18:57:13 +0000
@@ -5106,7 +5106,8 @@ static Log_event* next_event(Relay_log_i
read it while we have a lock, to avoid a mutex lock in
inc_event_relay_log_pos()
*/
- rli->set_future_event_relay_log_pos(my_b_tell(cur_log)); // TODO_MTS: ev->f_rlp
+ rli->set_future_event_relay_log_pos(my_b_tell(cur_log));
+ ev->future_event_relay_log_pos= rli->get_future_event_relay_log_pos();
if (hot_log)
mysql_mutex_unlock(log_lock);
DBUG_RETURN(ev);
Attachment: [text/bzr-bundle] bzr/andrei.elkin@oracle.com-20101122185713-vu8lgbp4l41f48cv.bundle
| Thread |
|---|
| • bzr commit into mysql-next-mr.crash-safe branch (andrei.elkin:3215) WL#5569 | Andrei Elkin | 22 Nov |