sql/log.cc
don't set LOG_EVENT_BINLOG_IN_USE_F for relay logs sql/sql_repl.cc clear LOG_EVENT_BINLOG_IN_USE_F flag before sending an event to a slave sql/log.cc: don't set LOG_EVENT_BINLOG_IN_USE_F for relay logs sql/sql_repl.cc: clear LOG_EVENT_BINLOG_IN_USE_F flag before sending an event to a slave
This commit is contained in:
parent
ebbee9d974
commit
72ae2a5884
@ -613,7 +613,12 @@ bool MYSQL_LOG::open(const char *log_name,
|
|||||||
even if this is not the very first binlog.
|
even if this is not the very first binlog.
|
||||||
*/
|
*/
|
||||||
Format_description_log_event s(BINLOG_VERSION);
|
Format_description_log_event s(BINLOG_VERSION);
|
||||||
s.flags|= LOG_EVENT_BINLOG_IN_USE_F;
|
/*
|
||||||
|
don't set LOG_EVENT_BINLOG_IN_USE_F for SEQ_READ_APPEND io_cache
|
||||||
|
as we won't be able to reset it later
|
||||||
|
*/
|
||||||
|
if (io_cache_type == WRITE_CACHE)
|
||||||
|
s.flags|= LOG_EVENT_BINLOG_IN_USE_F;
|
||||||
if (!s.is_valid())
|
if (!s.is_valid())
|
||||||
goto err;
|
goto err;
|
||||||
if (null_created_arg)
|
if (null_created_arg)
|
||||||
|
@ -456,6 +456,7 @@ impossible position";
|
|||||||
{
|
{
|
||||||
binlog_can_be_corrupted= test((*packet)[FLAGS_OFFSET+1] &
|
binlog_can_be_corrupted= test((*packet)[FLAGS_OFFSET+1] &
|
||||||
LOG_EVENT_BINLOG_IN_USE_F);
|
LOG_EVENT_BINLOG_IN_USE_F);
|
||||||
|
(*packet)[FLAGS_OFFSET+1] &= ~LOG_EVENT_BINLOG_IN_USE_F;
|
||||||
/*
|
/*
|
||||||
mark that this event with "log_pos=0", so the slave
|
mark that this event with "log_pos=0", so the slave
|
||||||
should not increment master's binlog position
|
should not increment master's binlog position
|
||||||
@ -512,8 +513,11 @@ impossible position";
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
if ((*packet)[EVENT_TYPE_OFFSET+1] == FORMAT_DESCRIPTION_EVENT)
|
if ((*packet)[EVENT_TYPE_OFFSET+1] == FORMAT_DESCRIPTION_EVENT)
|
||||||
|
{
|
||||||
binlog_can_be_corrupted= test((*packet)[FLAGS_OFFSET+1] &
|
binlog_can_be_corrupted= test((*packet)[FLAGS_OFFSET+1] &
|
||||||
LOG_EVENT_BINLOG_IN_USE_F);
|
LOG_EVENT_BINLOG_IN_USE_F);
|
||||||
|
(*packet)[FLAGS_OFFSET+1] &= ~LOG_EVENT_BINLOG_IN_USE_F;
|
||||||
|
}
|
||||||
else if ((*packet)[EVENT_TYPE_OFFSET+1] == STOP_EVENT)
|
else if ((*packet)[EVENT_TYPE_OFFSET+1] == STOP_EVENT)
|
||||||
binlog_can_be_corrupted= FALSE;
|
binlog_can_be_corrupted= FALSE;
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user