← Back to team overview

maria-developers team mailing list archive

New (by Knielsen): Using the Valgrind API in mysqld (23)

 

-----------------------------------------------------------------------
                              WORKLOG TASK
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
TASK...........: Using the Valgrind API in mysqld
CREATION DATE..: Fri, 22 May 2009, 11:43
SUPERVISOR.....: Monty
IMPLEMENTOR....: Knielsen
COPIES TO......: 
CATEGORY.......: Server-RawIdeaBin
TASK ID........: 23 (http://askmonty.org/worklog/?tid=23)
VERSION........: Benchmarks-3.0
STATUS.........: Assigned
PRIORITY.......: 60
WORKED HOURS...: 0
ESTIMATE.......: 40 (hours remain)
ORIG. ESTIMATE.: 40

PROGRESS NOTES:



DESCRIPTION:

Valgrind (the memcheck tool) has some very useful APIs that can be used in mysqld
when testing with Valgrind to improve testing and/or debugging:

    file:///usr/share/doc/valgrind/html/mc-manual.html#mc-manual.clientreqs
    file:///usr/share/doc/valgrind/html/mc-manual.html#mc-manual.mempools

This worklog is about adding configure checks and headers to allow to use these
in a way that continues to work on machines where the Valgrind headers or
functionality is missing.

It also includes adding some basic Valgrind enhancements:

 - Adding Valgrind annotations to custom memory allocators so that Valgrind can
   detect leaks, use-before-init, and use-after-free problems also for these
   allocators.

 - Adding checks for definedness in appropriate places (eg. when calling libz).


ESTIMATED WORK TIME

ESTIMATED COMPLETION DATE
-----------------------------------------------------------------------
WorkLog (v3.5.9)