Hi!

I am the creator of MySQL and MariaDB and a valgrind user since a LONG
time!  valgrind has been used to verify the integrity of MySQL since
the very early times of valgrind!

I have a small request to solve a small problem with valgrind in MariaDB:

To be able to test recovery during testing, our test system takes down
the mysqld server process hard and schedules a restart of the server.

We used to do that by sending sigkill internally in the the server to
itself and then the test waits for the server to restart and then the
test continues.

I noticed recently that when running the server under valgrind, the
sigkill was ignored and thus the test stalled. (I think this worked
with some earlier version of valgrind, but I am not sure about this)

I have now fixed this by sending a SIGFPE signal instead and setting
an internal variable to mark that we shouldn't write to the log that
the server died (as the test system who examines the logs would think
something went wrong).

The problem is that when the server dies hard with SIGFPE, the memtool
writes out the leaks and the test system thinks something is wrong.

The request I would like you to consider is to do one of the following:
- Ensure that sending a sigkill works and in this case there should
not be any valgrind leak report.
- Add an api call where we could specify that we don't want any leak
reports from now on.  If this would exist then I could call this when
we are about to send the SIGFPE/SIGKILL signal to the server.

Something like the following would be very useful:
VALGRIND_IGNORE_LEAKS(VALGRIND_LEAK_INDIRECT | VALGRIND_LEAK_DEFINITE...)

Regards,
Monty


_______________________________________________
Valgrind-users mailing list
Valgrind-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/valgrind-users

Reply via email to