Planet Gluster

Aggregated news from external sources

Building Gluster with Address Sanitizer

January 21, 2018

We occasionally find leaks in Gluster via bugs filed by users and customers.
We definitely have benefits from checking for memory leaks and address
corruption ourselves. The usual way has been to run it under valgrind. With
ASAN, the difference is we can compile the binary with ASAN and then anyone can
run their tests on top of this binary and it should crash in case it comes
across a memory leak or memory corruption. We’ve fixed at least one
bug
with the traceback from ASAN.

Here’s how you run Gluster under ASAN.

./autogen.sh
./configure --enable-gnfs --enable-debug --silent --sanitize=address

You need to make sure you have libasan installed or else this might error out.
Once this is done, compile and install like you would normally. Now run tests
and see how it works. There are problems with this approach though. If there’s
a leak in cli, it’s going to complain about it all the time. The noise doesn’t
imply that fixing that is important. The Gluster CLI is going away soon.
Additionally, the CLI isn’t a long running daemon. It’s started, does it’s job,
and dies immediately.

The tricky part though is catches memory you’ve forgotten to free. It does not
catch memory that you’ve allocated unnecessarily. In the near future, I want to
create downloadable RPMs which you can download and run tests against.

Source: nigelb (Building Gluster with Address Sanitizer)

BLOG

  • 31 Mar 2019
    Gluster Monthly Newsletter, March 2...

    Congratulations to the team for getting Gluster 6 released! https://www.gluster.org/announcing-gluster-6/ https://lists.gluster.org/pipermail/gluster-users/2019-March/036144.html   Our retrospective survey is open through April 8th, give us feedback on what we should start, stop or continue! https://lists.gluster.org/pipermail/gluster-users/2019-March/036144.html   Gluster 7 Roadmap Discussion kicked off for our 7 roadmap on the mailing lists, see [Gluster-users] GlusterFS...

    Read more
  • 25 Mar 2019
    Announcing Gluster 6.0

    The Gluster community is pleased to announce the release of 6.0, our latest release. This is a major release that includes a range of code improvements and stability fixes along with a few features as noted below. Specifically,  this release addresses one of the major concerns regarding FUSE mount process memory...

    Read more