summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVlad Lesin <vlad_lesin@mail.ru>2021-12-01 10:11:28 +0300
committerVlad Lesin <vlad_lesin@mail.ru>2022-02-11 11:47:22 +0300
commite95cef98c1614779a0c1112df401a108f20db07a (patch)
treed4bdbe853229e68a0197de4b7cdbc2b0bb59f843
parent17802165a621e5c739e70d3eb427bd1cbaeaba8a (diff)
downloadmariadb-git-bb-10.2-MDEV-27148-mysqltest-reject.tar.gz
MDEV-27148 running multiple instances of mtr with different var dirrectories can cause .reject and generated from .rdiff .result files overwritingbb-10.2-MDEV-27148-mysqltest-reject
The code which writes .reject file to the location of .result file is removed. Also tmp dirrectory is located only in tests var directory.
-rw-r--r--client/mysqltest.cc15
-rwxr-xr-xmysql-test/mysql-test-run.pl12
2 files changed, 5 insertions, 22 deletions
diff --git a/client/mysqltest.cc b/client/mysqltest.cc
index 6d5b6ff31b6..97c068874ea 100644
--- a/client/mysqltest.cc
+++ b/client/mysqltest.cc
@@ -2227,18 +2227,9 @@ void check_result()
dirname_part(reject_file, result_file_name, &reject_length);
- if (access(reject_file, W_OK) == 0)
- {
- /* Result file directory is writable, save reject file there */
- fn_format(reject_file, result_file_name, "",
- ".reject", MY_REPLACE_EXT);
- }
- else
- {
- /* Put reject file in opt_logdir */
- fn_format(reject_file, result_file_name, opt_logdir,
- ".reject", MY_REPLACE_DIR | MY_REPLACE_EXT);
- }
+ /* Put reject file in opt_logdir */
+ fn_format(reject_file, result_file_name, opt_logdir,
+ ".reject", MY_REPLACE_DIR | MY_REPLACE_EXT);
if (my_copy(log_file.file_name(), reject_file, MYF(0)) != 0)
die("Failed to copy '%s' to '%s', errno: %d",
diff --git a/mysql-test/mysql-test-run.pl b/mysql-test/mysql-test-run.pl
index 809f8794e00..51eeb0c8b68 100755
--- a/mysql-test/mysql-test-run.pl
+++ b/mysql-test/mysql-test-run.pl
@@ -3350,16 +3350,8 @@ sub do_before_run_mysqltest($)
push @cmd, '--binary';
}
push @cmd, (qw/-r - -f -s -o/, $dest, $base_result, $resfile);
- if (-w $resdir) {
- # don't rebuild a file if it's up to date
- unless (-e $dest and -M $dest < -M $resfile
- and -M $dest < -M $base_result) {
- run_system(@cmd);
- }
- } else {
- $cmd[-3] = $dest = $opt_tmpdir . '/' . basename($dest);
- run_system(@cmd);
- }
+ $cmd[-3] = $dest = $opt_tmpdir . '/' . basename($dest);
+ run_system(@cmd);
$tinfo->{result_file} = $dest;
}