diff --git a/sql/rpl_gtid.cc b/sql/rpl_gtid.cc index d5a672eb854..92dba552a57 100644 --- a/sql/rpl_gtid.cc +++ b/sql/rpl_gtid.cc @@ -1178,7 +1178,7 @@ rpl_binlog_state::load(rpl_slave_state *slave_pos) mysql_mutex_lock(&LOCK_binlog_state); reset_nolock(); - if (slave_pos->iterate(rpl_binlog_state_load_cb, this, NULL, 0)) + if (slave_pos->iterate(rpl_binlog_state_load_cb, this, NULL, 0, false)) res= true; mysql_mutex_unlock(&LOCK_binlog_state); return res; diff --git a/sql/rpl_rli.cc b/sql/rpl_rli.cc index d98d216d3f2..58aa1e4023d 100644 --- a/sql/rpl_rli.cc +++ b/sql/rpl_rli.cc @@ -1421,7 +1421,6 @@ void Relay_log_info::free_inuse_relaylog(inuse_relaylog *ir) { my_free(ir->relay_log_state); - my_atomic_rwlock_destroy(&ir->inuse_relaylog_atomic_lock); my_free(ir); } diff --git a/sql/slave.cc b/sql/slave.cc index d29f2161acf..af441815169 100644 --- a/sql/slave.cc +++ b/sql/slave.cc @@ -4722,7 +4722,7 @@ log '%s' at position %s, relay log '%s' position: %s%s", RPL_LOG_NAME, ulong domain_count; flush_relay_log_info(rli); - if (opt_slave_parallel_threads > 0) + if (mi->using_parallel()) { /* In parallel replication GTID mode, we may stop with different domains diff --git a/sql/sql_repl.cc b/sql/sql_repl.cc index 8e18d218d37..3ce9ea8a2cc 100644 --- a/sql/sql_repl.cc +++ b/sql/sql_repl.cc @@ -2335,12 +2335,12 @@ static int send_format_descriptor_event(binlog_send_info *info, slave connects at a position past this event, it means that it already received and handled it in a previous connect). */ - if (!info.gtid_state.is_pos_reached()) + if (!info->gtid_state.is_pos_reached()) { int4store((char*) packet->ptr()+LOG_EVENT_MINIMAL_HEADER_LEN+ ST_CREATED_OFFSET+ev_offset, (ulong) 0); - if (info.current_checksum_alg != BINLOG_CHECKSUM_ALG_OFF && - info.current_checksum_alg != BINLOG_CHECKSUM_ALG_UNDEF) + if (info->current_checksum_alg != BINLOG_CHECKSUM_ALG_OFF && + info->current_checksum_alg != BINLOG_CHECKSUM_ALG_UNDEF) fix_checksum(packet, ev_offset); } }