diff options
author | He Zhenxing <zhenxing.he@sun.com> | 2009-10-14 13:24:47 +0800 |
---|---|---|
committer | He Zhenxing <zhenxing.he@sun.com> | 2009-10-14 13:24:47 +0800 |
commit | 6ae50d8aedbded8dcdc7504d116f25bcd02535ff (patch) | |
tree | 68e9d76bbd263b6dde17ab9bc2ac3bb3dfad0115 /sql | |
parent | e5e8f1a47f79090d071a151ef87cf8566b3ff225 (diff) | |
download | mariadb-git-6ae50d8aedbded8dcdc7504d116f25bcd02535ff.tar.gz |
Postfix after merge semi-sync with heartbeat
Use ev_offset instead of 1 as the packet header offset when getting
log position from events for heartbeat
call reset_transmit_packet before calling send_heartbeat_event
sql/sql_repl.cc:
Use ev_offset instead of 1 as the packet header offset when getting log position from events for heartbeat
call reset_transmit_packet before calling send_heartbeat_event
Diffstat (limited to 'sql')
-rw-r--r-- | sql/sql_repl.cc | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/sql/sql_repl.cc b/sql/sql_repl.cc index 20ac7b01eda..9e4ef364408 100644 --- a/sql/sql_repl.cc +++ b/sql/sql_repl.cc @@ -427,7 +427,6 @@ static int send_heartbeat_event(NET* net, String* packet, { DBUG_RETURN(-1); } - packet->set("\0", 1, &my_charset_bin); DBUG_RETURN(0); } @@ -689,7 +688,7 @@ impossible position"; log's filename does not change while it's active */ if (coord) - coord->pos= uint4korr(packet->ptr() + 1 + LOG_POS_OFFSET); + coord->pos= uint4korr(packet->ptr() + ev_offset + LOG_POS_OFFSET); event_type= (Log_event_type)((*packet)[LOG_EVENT_OFFSET+ev_offset]); if (event_type == FORMAT_DESCRIPTION_EVENT) @@ -849,6 +848,9 @@ impossible position"; sql_print_information("the rest of heartbeat info skipped ..."); } #endif + /* reset transmit packet for the heartbeat event */ + if (reset_transmit_packet(thd, flags, &ev_offset, &errmsg)) + goto err; if (send_heartbeat_event(net, packet, coord)) { errmsg = "Failed on my_net_write()"; |