23.4 Tracking Memory Corruption Issues on Linux

On Linux platforms, eDirectory uses Google malloc (libtcmalloc) as the default memory allocator.

To track memory corruption issues, set the MALLOC_CHECK_ environment variable in the ndsd startup script. The startup script checks for this variable. If set, the default system malloc is used, else libtcmalloc is loaded.

MALLOC_CHECK Settings in ndsd

  • When MALLOC_CHECK_ is set to 0, any detected heap corruption is silently ignored.

  • When MALLOC_CHECK_ is set to 2, abort is called immediately.

    This helps to identify the real cause of the memory corruption at early stages, which might be difficult to track later.