Create minidump when server fails to shutdown. If process is being
debugged, cause a debug break.
Moves some code which is part of safe_kill into mysys, as both safe_kill,
and mysqltest produce minidumps on different timeouts.
Small cleanup in wait_until_dead() - replace inefficient loop with a single
wait.
if all options from a combination from the combinations file are already
present in the server's list of options, then don't try to run tests
in other combinations from this file.
old behavior was: if at least one option from a combination is
already present in the list...
part II
need to tell SafeProcess not to collect the exited mysqld
in sleep_until_file_created(), so that it would be found in the
later wait_any_timeout() in run_testcase()
Removed a strange condition in SafeProcess::wait_one()
that treated return value of -1 from waitpid() as "process exists"
instead of as "no such child process" (see `perldoc -f waitpid`)
Add fixed for tests mysqld--help,aix.rdiff and sysvars_server_notembedded,aix.rdiff
AIX couldn't compile in embedded mode so leaving sysvars_server_embedded
for later (if required).
Test times when using --valgrind are now 4 hours and server start/shutdown
time 180 seconds.
The whole test suite time is caped at 1 day instead of 7 days
Reviewer: Monty
Until https://github.com/rr-debugger/rr/issues/2613
has been addressed, ./mtr --rr will fail to start up the
server if it has been configured with liburing.
To make the ./mtr --rr option work out of the box, we will
disable native asynchronous I/O.
Note: libaio never worked under rr, but it failed more gracefully:
the emulated io_setup() call would always return an error.
use _RR_TRACE_DIR=dir instead of -o dir, as the former can store
multiple traces in dir (if, e.g., the test restarts mysqld)
suppress uninitialized warning when $exe is undefined (--manual-XXX)