mirror of
https://github.com/MariaDB/server.git
synced 2025-07-29 05:21:33 +03:00
BUG#23171: Illegal group log position
Tail fixes after re-applying patches to older version of clone. sql/log_event.cc: Name change of shall_skip() -> do_shall_skip() Introducing public shall_skip(). Name change of skip reason enumeration constants. Removing extreneous argument to slave_print_msg() causing compiler warning. sql/log_event.h: Adding enumeration for skip reason. Factoring out exec_event() into exec_relay_log_event(). Making public interface to event execution primitives. Adding documentation. Making some (internal) functions const-correct. sql/rpl_rli.cc: replicate_same_server_id is now a member variable of RLI. sql/rpl_rli.h: replicate_same_server_id is now a member variable of RLI. sql/slave.cc: Using RLI-specific member variable replicate_same_server_id instead of global instance. Moving comments about skipping logic to exec_relay_log_event(). Moving event execution logic to exec_relay_log_event(). sql/sql_binlog.cc: Using apply_event() directly and adding comment with explenation.
This commit is contained in:
@ -150,9 +150,17 @@ void mysql_client_binlog_statement(THD* thd)
|
||||
DBUG_PRINT("info", ("bytes_decoded=%d; bufptr=0x%lx; buf[EVENT_LEN_OFFSET]=%u",
|
||||
bytes_decoded, bufptr, uint4korr(bufptr+EVENT_LEN_OFFSET)));
|
||||
ev->thd= thd;
|
||||
if (int err= ev->exec_event(thd->rli_fake))
|
||||
/*
|
||||
We go directly to the application phase, since we don't need
|
||||
to check if the event shall be skipped or not.
|
||||
|
||||
Neither do we have to update the log positions, since that is
|
||||
not used at all: the rli_fake instance is used only for error
|
||||
reporting.
|
||||
*/
|
||||
if (int err= ev->apply_event(thd->rli_fake))
|
||||
{
|
||||
DBUG_PRINT("info", ("exec_event() - error=%d", error));
|
||||
DBUG_PRINT("info", ("apply_event() - error=%d", error));
|
||||
/*
|
||||
TODO: Maybe a better error message since the BINLOG statement
|
||||
now contains several events.
|
||||
|
Reference in New Issue
Block a user