diff options
author | sachin <sachin.setiya@mariadb.com> | 2021-03-11 21:59:13 +0000 |
---|---|---|
committer | sachin <sachin.setiya@mariadb.com> | 2021-03-11 21:59:13 +0000 |
commit | 3ad829d31aeb56cd76331d3478a1d8e04ed7300a (patch) | |
tree | e855752cc9ed8b90b67b89b51336ac26ed977f7a /sql/rpl_rli.cc | |
parent | 4b4a020d1ce15275689fc307b8d13c107e6a41be (diff) | |
download | mariadb-git-queue-v1.tar.gz |
commit 5queue-v1
Diffstat (limited to 'sql/rpl_rli.cc')
-rw-r--r-- | sql/rpl_rli.cc | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/sql/rpl_rli.cc b/sql/rpl_rli.cc index 8b540863e31..a914378de48 100644 --- a/sql/rpl_rli.cc +++ b/sql/rpl_rli.cc @@ -1418,7 +1418,7 @@ bool Relay_log_info::is_until_satisfied(Log_event *ev) bool Relay_log_info::stmt_done(my_off_t event_master_log_pos, THD *thd, - rpl_group_info *rgi) + rpl_group_info *rgi, Log_event *ev) { int error= 0; DBUG_ENTER("Relay_log_info::stmt_done"); @@ -1481,6 +1481,13 @@ bool Relay_log_info::stmt_done(my_off_t event_master_log_pos, THD *thd, if (rgi->is_parallel_exec) mysql_mutex_unlock(&data_lock); } + if(mi->rpl_queue && ev->get_type_code() == QUERY_EVENT) + { + Query_log_event *qev= (Query_log_event* )ev; + if (!qev->is_commit() && !qev->is_rollback()) + mi->rpl_queue->dequeue_by_tail_ptr((uchar *)ev+ + sizeof(*(Query_log_event *)this)); + } DBUG_EXECUTE_IF("inject_crash_after_flush_rli", DBUG_SUICIDE();); } DBUG_RETURN(error); |