summaryrefslogtreecommitdiff
path: root/sql/sql_repl.cc
diff options
context:
space:
mode:
authorMarko Mäkelä <marko.makela@mariadb.com>2021-10-21 16:06:34 +0300
committerMarko Mäkelä <marko.makela@mariadb.com>2021-10-21 16:06:34 +0300
commit73f5cbd0b6c1461d1a4c3b69ca9e8e9fb187de92 (patch)
tree4846b1a8a677f2e7687b4d6ec6bd43db3feccd43 /sql/sql_repl.cc
parent78dec1f199458cff30062296b2cf0b42a71d2466 (diff)
parenta0fda162ebd991a60634103f2c9d0735154b9dd3 (diff)
downloadmariadb-git-73f5cbd0b6c1461d1a4c3b69ca9e8e9fb187de92.tar.gz
Merge 10.5 into 10.6
Diffstat (limited to 'sql/sql_repl.cc')
-rw-r--r--sql/sql_repl.cc10
1 files changed, 10 insertions, 0 deletions
diff --git a/sql/sql_repl.cc b/sql/sql_repl.cc
index 7bcff12a735..90fdce1b56f 100644
--- a/sql/sql_repl.cc
+++ b/sql/sql_repl.cc
@@ -3959,6 +3959,16 @@ err:
mi->unlock_slave_threads();
if (ret == FALSE)
my_ok(thd);
+ else
+ {
+ /*
+ Depending on where CHANGE MASTER failed, the logs may be waiting to be
+ reopened. This would break future log updates and CHANGE MASTER calls.
+ `try_fix_log_state()` allows the relay log to fix its state to no longer
+ expect to be reopened.
+ */
+ mi->rli.relay_log.try_fix_log_state();
+ }
DBUG_RETURN(ret);
}