summaryrefslogtreecommitdiff
path: root/sql/wsrep_sst.cc
diff options
context:
space:
mode:
authorJan Lindström <jan.lindstrom@mariadb.com>2021-06-22 15:44:44 +0300
committerJulius Goryavsky <julius.goryavsky@mariadb.com>2021-06-25 21:23:04 +0200
commit1c03e7a66741a840ea39939853a774d93d3d4704 (patch)
tree36ee08d93ea5c577b4ba74fe36c3e21269696991 /sql/wsrep_sst.cc
parent09b03ff31b8fd71aee265c22479613a28879f3b9 (diff)
downloadmariadb-git-1c03e7a66741a840ea39939853a774d93d3d4704.tar.gz
MDEV-25978 : rsync SST does not work with custom binlog name
wsrep_sst_common did not correctly set name for binlog index file if custom binlog name was used and this name was not added to script command line. Added test case for both log_basename and log_binlog.
Diffstat (limited to 'sql/wsrep_sst.cc')
-rw-r--r--sql/wsrep_sst.cc5
1 files changed, 5 insertions, 0 deletions
diff --git a/sql/wsrep_sst.cc b/sql/wsrep_sst.cc
index 4943db9a87f..88bee67a2fc 100644
--- a/sql/wsrep_sst.cc
+++ b/sql/wsrep_sst.cc
@@ -1053,6 +1053,8 @@ static ssize_t sst_prepare_other (const char* method,
{
WSREP_ERROR("sst_prepare_other(): generate_binlog_index_opt_val() failed %d",
ret);
+ if (binlog_opt_val) my_free(binlog_opt_val);
+ return ret;
}
make_wsrep_defaults_file();
@@ -1070,6 +1072,7 @@ static ssize_t sst_prepare_other (const char* method,
wsrep_defaults_file,
(int)getpid(),
binlog_opt_val, binlog_index_opt_val);
+
my_free(binlog_opt_val);
my_free(binlog_index_opt_val);
@@ -1794,6 +1797,8 @@ static int sst_donate_other (const char* method,
{
WSREP_ERROR("sst_prepare_other(): generate_binlog_index_opt_val() failed %d",
ret);
+ if (binlog_opt_val) my_free(binlog_opt_val);
+ return ret;
}
make_wsrep_defaults_file();