Uploaded image for project: 'Qpid'
  1. Qpid
  2. QPID-4180

Occasional Buffer leak in qpidd

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 0.19
    • C++ Broker
    • None

    Description

      Occasionally when running the tests with valgrind (make check) the stop_broker test fails with a memory leak of one IO buffer:

      ==13674== HEAP SUMMARY:
      ==13674== in use at exit: 73,479 bytes in 188 blocks
      ==13674== total heap usage: 4,794,669 allocs, 4,794,481 frees, 402,637,196 bytes allocated
      ==13674==
      ==13674== 65,568 (32 direct, 65,536 indirect) bytes in 1 blocks are definitely lost in loss record 188 of 188
      ==13674== at 0x4A06C8E: operator new(unsigned long) (vg_replace_malloc.c:261)
      ==13674== by 0x535EDF4: qpid::sys::AsynchIOHandler::init(qpid::sys::AsynchIO*, qpid::sys::Timer&, unsigned int, int) (AsynchIOHandler.cpp:93)
      ==13674== by 0x4EA98C1: qpid::sys::AsynchIOProtocolFactory::established(boost::shared_ptr<qpid::sys::Poller>, qpid::sys::Socket const&, qpid::sys::ConnectionCodec::Factory*, bool) (TCPIOPlugin.cpp:169)
      ==13674== by 0x4EABF69: boost::detail::function::void_function_obj_invoker1<boost::_bi::bind_t<void, boost::_mfi::mf4<void, qpid::sys::AsynchIOProtocolFactory, boost::shared_ptr<qpid::sys::Poller>, qpid::sys::Socket const&, qpid::sys::ConnectionCodec::Factory*, bool>, boost::_bi::list5<boost::_bi::value<qpid::sys::AsynchIOProtocolFactory*>, boost::_bi::value<boost::shared_ptr<qpid::sys::Poller> >, boost::arg<1>, boost::_bi::value<qpid::sys::ConnectionCodec::Factory*>, boost::_bi::value<bool> > >, void, qpid::sys::Socket const&>::invoke(boost::detail::function::function_buffer&, qpid::sys::Socket const&) (mem_fn_template.hpp:494)
      ==13674== by 0x528623D: qpid::sys::posix::AsynchAcceptor::readable(qpid::sys::DispatchHandle&) (function_template.hpp:1013)
      ==13674== by 0x5364582: boost::function1<void, qpid::sys::DispatchHandle&>::operator()(qpid::sys::DispatchHandle&) const (function_template.hpp:1013)
      ==13674== by 0x53636D0: qpid::sys::DispatchHandle::processEvent(qpid::sys::Poller::EventType) (DispatchHandle.cpp:280)
      ==13674== by 0x5293491: qpid::sys::Poller::run() (Poller.h:131)
      ==13674== by 0x528B9B9: qpid::sys::(anonymous namespace)::runRunnable(void*) (Thread.cpp:35)
      ==13674== by 0x388FE07850: start_thread (in /lib64/libpthread-2.12.so)
      ==13674== by 0x388F6E76DC: clone (in /lib64/libc-2.12.so)
      ==13674==
      ==13674== LEAK SUMMARY:
      ==13674== definitely lost: 32 bytes in 1 blocks
      ==13674== indirectly lost: 65,536 bytes in 1 blocks
      ==13674== possibly lost: 0 bytes in 0 blocks
      ==13674== still reachable: 7,911 bytes in 186 blocks
      ==13674== suppressed: 0 bytes in 0 blocks

      Attachments

        Activity

          People

            astitcher Andrew Stitcher
            astitcher Andrew Stitcher
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: