incubator-lucy-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Marvin Humphrey (JIRA)" <>
Subject [jira] Updated: (LUCY-80) Valgrind test build target for Perl bindings
Date Thu, 03 Dec 2009 00:11:20 GMT


Marvin Humphrey updated LUCY-80:

    Attachment: test_valgrind.diff

This patch creates two build targets within Lucy::Build. The first is
"test_valgrind", which runs the test suite under valgrind.  

The second target is "suppressions", which builds a "local.supp" file that
inoculates the test against memory leaks in the Perl binary itself and in the
modules XSLoader and DynaLoader.  

The "test_valgrind" target takes an additional "suppressions" argument, which
can be used to specify an additional suppressions file.  Currently, Lucy
passes on CentOS 5.2 with the following invocation:

./Build test_valgrind suppressions=/path/to/additional/suppfile.supp

A further suppressions file is included in the patch,
trunk/devel/conf/lucyperl.supp.  It suppresses known leaks associated with the
the Lucy object system, such as the initialization of the
lucy_VTable_registry hash.

Even with all these tweaks, it can be difficult to get the test to pass on
some systems.  My MacBook Pro (OS X 10.5) makes different decisions than the
CentOS box with regards to inlining functions, rendering lucyperl.supp
invalid.  (TODO: this problem can theoretically be defeated by disabling inlining.)

Nevertheless, valgrind testing is absolutely essential for security
and memory integrity, and this test target must pass when preparing a release.

> Valgrind test build target for Perl bindings
> --------------------------------------------
>                 Key: LUCY-80
>                 URL:
>             Project: Lucy
>          Issue Type: New Feature
>          Components: Perl bindings
>            Reporter: Marvin Humphrey
>            Assignee: Marvin Humphrey
>            Priority: Minor
>         Attachments: test_valgrind.diff
> Add a build target that runs the test suite under valgrind, to detect memory
> errors and leaks.

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

View raw message