Hide Forgot
There seems to be a memory leak in the self-heal code. This is the valgrind report which indicates report. This leak occurs only when self-heal is triggered. With pure distribute or pure replicate without doing self-heal the leak is not reported. ==20261== 752,308 (45,280 direct, 707,028 indirect) bytes in 566 blocks are definitely lost in loss record 200 of 211 ==20261== at 0x4C279FC: calloc (vg_replace_malloc.c:467) ==20261== by 0x4E7D8EA: __gf_calloc (mem-pool.c:142) ==20261== by 0x4E3FB90: _dict_set (dict.c:251) ==20261== by 0x4E3FD85: dict_set (dict.c:300) ==20261== by 0x4E44794: dict_unserialize (dict.c:2573) ==20261== by 0x86F71CF: client3_1_lookup_cbk (client3_1-fops.c:2196) ==20261== by 0x50B80BD: rpc_clnt_handle_reply (rpc-clnt.c:741) ==20261== by 0x50B83F9: rpc_clnt_notify (rpc-clnt.c:854) ==20261== by 0x50B47B6: rpc_transport_notify (rpc-transport.c:919) ==20261== by 0x7AC0C9F: socket_event_poll_in (socket.c:1647) ==20261== by 0x7AC1213: socket_event_handler (socket.c:1762) ==20261== by 0x4E7CDC0: event_dispatch_epoll_handler (event.c:794) =20261== 1,574,774 (129,984 direct, 1,444,790 indirect) bytes in 1,354 blocks are definitely lost in loss record 204 of 211 ==20261== at 0x4C279FC: calloc (vg_replace_malloc.c:467) ==20261== by 0x4E7D8EA: __gf_calloc (mem-pool.c:142) ==20261== by 0x4E3F500: get_new_dict_full (dict.c:66) ==20261== by 0x4E3F5A3: dict_new (dict.c:97) ==20261== by 0x86F709B: client3_1_lookup_cbk (client3_1-fops.c:2190) ==20261== by 0x50B80BD: rpc_clnt_handle_reply (rpc-clnt.c:741) ==20261== by 0x50B83F9: rpc_clnt_notify (rpc-clnt.c:854) ==20261== by 0x50B47B6: rpc_transport_notify (rpc-transport.c:919) ==20261== by 0x7AC0C9F: socket_event_poll_in (socket.c:1647) ==20261== by 0x7AC1213: socket_event_handler (socket.c:1762) ==20261== by 0x4E7CDC0: event_dispatch_epoll_handler (event.c:794) ==20261== by 0x4E7CFDA: event_dispatch_epoll (event.c:856) ==20261== LEAK SUMMARY: ==20261== definitely lost: 175,674 bytes in 1,922 blocks ==20261== indirectly lost: 2,152,122 bytes in 29,044 blocks ==20261== possibly lost: 33,013,397 bytes in 1,805 blocks ==20261== still reachable: 38,485 bytes in 68 blocks ==20261== suppressed: 0 bytes in 0 blocks Without self-heal the above leak is not reported.
CHANGE: http://review.gluster.com/708 (Change-Id: I2b8c3a2d7771463ef94892f2a78fc464aba703ee) merged in release-3.2 by Vijay Bellur (vijay)
CHANGE: http://review.gluster.com/719 (Change-Id: I79a1c70c47649fbcf236191f174d766d5806545c) merged in master by Vijay Bellur (vijay)