Details
Description
When i run the tests from inside the cmake BUILD_DIR (out of source), mtr can no longer find the replace utility.
mysql-test-run: *** ERROR: Could not find any of /var/tmp/portage/dev-db/mariadb-5.5.41/work/mysql/extra/replace /var/tmp/portage/dev-db/mariadb-5.5.41/work/mariadb-5.5.41_build/client/replace
replace is built into ${BUILD_DIR}/extra, while mtr is searching in ${BUILD_DIR}/client (or ${S}/extra for in-source builds.. not default)
This seems to be a result of the merge upstream:
https://bazaar.launchpad.net/~maria-captains/maria/5.5/revision/4393/mysql-test/mysql-test-run.pl#mysql-test/mysql-test-run.pl
# ----------------------------------------------------
# replace
# ----------------------------------------------------
my $exe_replace= mtr_exe_exists(vs_config_dirs('extra', 'replace'),
"$basedir/extra/replace",
"$path_client_bindir/replace");
$ENV{'REPLACE'}= native_path($exe_replace);
Gliffy Diagrams
Attachments
Issue Links
- is duplicated by
-
MDEV-7388 Tests not working in Debian
-
- Closed
-
Activity
- All
- Comments
- Work Log
- History
- Activity
- Transitions
It works in upstream MySQL, though.
The difference is in vs_config_dirs subroutine.
In MySQL, it returns 4 paths:
return ("$bindir/$path_part/Release/$exe", "$bindir/$path_part/RelWithDebinfo/$exe", "$bindir/$path_part/Debug/$exe", "$bindir/$path_part/$exe");in MariaDB, there are only 3:
return ("$basedir/$path_part/release/$exe", "$basedir/$path_part/relwithdebinfo/$exe", "$basedir/$path_part/debug/$exe");The last path in MySQL's version is where replace actually is.