DOKK / manpages / debian 12 / libbson-doc / bson_valgrind.3.en
BSON_VALGRIND(3) libbson BSON_VALGRIND(3)

bson_valgrind - Use Valgrind to Check For BSON Data Leaks

A stack-allocated bson_t contains a small internal buffer; it only heap-allocates additional storage if necessary, depending on its data size. Therefore if you forget to call bson_destroy() on a stack-allocated bson_t, it might or might not cause a leak that can be detected by valgrind during testing.

To catch all potential BSON data leaks in your code, configure the BSON_MEMCHECK flag:

cmake -DCMAKE_C_FLAGS="-DBSON_MEMCHECK -g" .


With this flag set, every bson_t mallocs at least one byte. Run your program's unittests with valgrind to verify all bson_t structs are destroyed.

Set the environment variable MONGOC_TEST_VALGRIND to on to skip timing-dependent tests known to fail with valgrind.

MongoDB, Inc

2017-present, MongoDB, Inc

October 20, 2022 1.23.1