[ https://issues.apache.org/jira/browse/PROTON-424?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Frank Quinn updated PROTON-424: ------------------------------- Attachment: qpid_messenger_leak_repro.c > Memory Leak in Proton Messenger Send / Recv > ------------------------------------------- > > Key: PROTON-424 > URL: https://issues.apache.org/jira/browse/PROTON-424 > Project: Qpid Proton > Issue Type: Bug > Components: proton-c > Affects Versions: 0.5 > Environment: Linux > Reporter: Frank Quinn > Attachments: qpid_messenger_leak_repro.c > > > Hi Folks, > I have encountered what looks like a memory leak in messenger if someone > could verify? > I have attached some code which runs under valgrind --leak-check=full to > produce the following output. > Can anyone verify if there is a way to clean this up or is this a leak in > proton-c 0.5? > Cheers, > Frank > ==21663== Memcheck, a memory error detector > ==21663== Copyright (C) 2002-2012, and GNU GPL'd, by Julian Seward et al. > ==21663== Using Valgrind-3.8.1 and LibVEX; rerun with -h for copyright info > ==21663== Command: ./qpid_messenger_leak_repro > ==21663== > Waiting on recv > ==21663== > ==21663== HEAP SUMMARY: > ==21663== in use at exit: 376,057 bytes in 3,417 blocks > ==21663== total heap usage: 4,110 allocs, 693 frees, 763,143 bytes allocated > ==21663== > ==21663== 142,153 (2,776 direct, 139,377 indirect) bytes in 1 blocks are > definitely lost in loss record 996 of 997 > ==21663== at 0x4A0887C: malloc (vg_replace_malloc.c:270) > ==21663== by 0x4C232CF: pn_new (in > /home/fquinn/lib/qpid-proton-0.5/lib64/libqpid-proton.so.2.0.0) > ==21663== by 0x4C336AD: pn_connection (in > /home/fquinn/lib/qpid-proton-0.5/lib64/libqpid-proton.so.2.0.0) > ==21663== by 0x4C421EC: pn_messenger_connection (in > /home/fquinn/lib/qpid-proton-0.5/lib64/libqpid-proton.so.2.0.0) > ==21663== by 0x4C424DC: pn_messenger_tsync (in > /home/fquinn/lib/qpid-proton-0.5/lib64/libqpid-proton.so.2.0.0) > ==21663== by 0x4C42695: pn_messenger_sync (in > /home/fquinn/lib/qpid-proton-0.5/lib64/libqpid-proton.so.2.0.0) > ==21663== by 0x4C44301: pn_messenger_recv (in > /home/fquinn/lib/qpid-proton-0.5/lib64/libqpid-proton.so.2.0.0) > ==21663== by 0x400C43: qpidListenerThread (qpid_messenger_leak_repro.c:18) > ==21663== by 0x3702407D14: start_thread (pthread_create.c:308) > ==21663== by 0x37020F253C: clone (clone.S:114) > ==21663== > ==21663== 142,168 (2,776 direct, 139,392 indirect) bytes in 1 blocks are > definitely lost in loss record 997 of 997 > ==21663== at 0x4A0887C: malloc (vg_replace_malloc.c:270) > ==21663== by 0x4C232CF: pn_new (in > /home/fquinn/lib/qpid-proton-0.5/lib64/libqpid-proton.so.2.0.0) > ==21663== by 0x4C336AD: pn_connection (in > /home/fquinn/lib/qpid-proton-0.5/lib64/libqpid-proton.so.2.0.0) > ==21663== by 0x4C421EC: pn_messenger_connection (in > /home/fquinn/lib/qpid-proton-0.5/lib64/libqpid-proton.so.2.0.0) > ==21663== by 0x4C42F48: pn_messenger_resolve (in > /home/fquinn/lib/qpid-proton-0.5/lib64/libqpid-proton.so.2.0.0) > ==21663== by 0x4C4310B: pn_messenger_link (in > /home/fquinn/lib/qpid-proton-0.5/lib64/libqpid-proton.so.2.0.0) > ==21663== by 0x4C4333C: pn_messenger_target (in > /home/fquinn/lib/qpid-proton-0.5/lib64/libqpid-proton.so.2.0.0) > ==21663== by 0x4C43DDE: pn_messenger_put (in > /home/fquinn/lib/qpid-proton-0.5/lib64/libqpid-proton.so.2.0.0) > ==21663== by 0x400D40: main (qpid_messenger_leak_repro.c:79) > ==21663== > ==21663== LEAK SUMMARY: > ==21663== definitely lost: 5,552 bytes in 2 blocks > ==21663== indirectly lost: 278,769 bytes in 388 blocks > ==21663== possibly lost: 0 bytes in 0 blocks > ==21663== still reachable: 91,736 bytes in 3,027 blocks > ==21663== suppressed: 0 bytes in 0 blocks > ==21663== Reachable blocks (those to which a pointer was found) are not shown. > ==21663== To see them, rerun with: --leak-check=full --show-reachable=yes > ==21663== > ==21663== For counts of detected and suppressed errors, rerun with: -v > ==21663== ERROR SUMMARY: 2 errors from 2 contexts (suppressed: 2 from 2) -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira