• unknown's avatar
    BUG#21671 memory leak for mgmapi event listeners · 105ed9de
    unknown authored
    fixes the following valgrind warning (when running ndb_mgm under valgrind,
    or, indeed any other mgmapi program listening to events):
    
    ==23291== 190 (20 direct, 170 indirect) bytes in 1 blocks are definitely lost in loss record 13 of 22
    ==23291==    at 0x401C895: operator new(unsigned) (vg_replace_malloc.c:163)
    ==23291==    by 0x8075300: ParserImpl::run(Parser<ParserImpl::Dummy>::Context*, Properties const**, bool volatile*) const (Parser.cpp:178)
    ==23291==    by 0x806D09B: Parser<ParserDummy>::parse(Parser<ParserDummy>::Context&, ParserDummy&) (Parser.hpp:219)
    ==23291==    by 0x80671C4: ndb_mgm_call(ndb_mgm_handle*, ParserRow<ParserDummy> const*, char const*, Properties const*) (mgmapi.cpp:355)
    ==23291==    by 0x806AB79: ndb_mgm_listen_event_internal(ndb_mgm_handle*, int const*, int) (mgmapi.cpp:1419)
    ==23291==    by 0x806AC1F: ndb_mgm_listen_event (mgmapi.cpp:1434)
    ==23291==    by 0x805EB5D: event_thread_run(void*) (CommandInterpreter.cpp:467)
    ==23291==    by 0x806F70A: ndb_thread_wrapper (NdbThread.c:68)
    ==23291==    by 0x4042340: start_thread (in /lib/tls/i686/cmov/libpthread-2.3.6.so)
    ==23291==    by 0x429D4ED: clone (in /lib/tls/i686/cmov/libc-2.3.6.so)
    
    
    ndb/src/mgmapi/mgmapi.cpp:
      fix memory leak for mgmapi event listeners (1 per connect)
      
      (missing delete of reply Properties object returned by ndb_mgm_call)
    105ed9de
mgmapi.cpp 62.9 KB