activemq-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Timothy Bish (JIRA)" <j...@apache.org>
Subject [jira] Commented: (AMQCPP-91) A few more Openwire memory leaks
Date Fri, 16 Mar 2007 13:02:34 GMT

    [ https://issues.apache.org/activemq/browse/AMQCPP-91?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_38841
] 

Timothy Bish commented on AMQCPP-91:
------------------------------------

Those could be phantom leaks since if you look at the functions in question, they return those
allocated objects to the caller.  The caller then uses them when performing actions on the
Producer of Consumer in question.  



> A few more Openwire memory leaks
> --------------------------------
>
>                 Key: AMQCPP-91
>                 URL: https://issues.apache.org/activemq/browse/AMQCPP-91
>             Project: ActiveMQ C++ Client
>          Issue Type: Bug
>          Components: Openwire
>    Affects Versions: 2.0
>            Reporter: Albert Strasheim
>         Assigned To: Nathan Mittler
>            Priority: Minor
>             Fix For: 2.0
>
>
> I've found a few memory leaks in the Openwire code when running the unit tests for our
library. I'll report the first few now (the ones I think I've figured out), and I'll add info
on further leaks in separate comments.
> First possible leak:
> ==22866== 1728 (864 direct, 864 indirect) bytes in 12 blocks are definitely lost in loss
record 25 of 40
> ==22866==    at 0x1B90939A: operator new(unsigned) (vg_replace_malloc.c:132)
> ==22866==    by 0x81943CA: activemq::connector::openwire::OpenWireConnector::createConsumerInfo(cms::Destination
const*, activemq::connector::SessionInfo*) (OpenWireConnector.cpp:621)
> ==22866==    by 0x81994FD: activemq::connector::openwire::OpenWireConnector::createConsumer(cms::Destination
const*, activemq::connector::SessionInfo*, std::string const&, bool) (OpenWireConnector.cpp:382)
> ==22866==    by 0x8148B89: activemq::core::ActiveMQSession::createConsumer(cms::Destination
const*, std::string const&, bool) (ActiveMQSession.cpp:236)
> ==22866==    by 0x8146CAB: activemq::core::ActiveMQSession::createConsumer(cms::Destination
const*, std::string const&) (ActiveMQSession.cpp:208)
> OpenWireConnector::createConsumerInfo allocates a commands::ConsumerInfo which is returned
to OpenWireConnector::createConsumer which does a few things with it, but doesn't delete it
if the member function returns normally.
> Next possible leak:
> ==22866== 1232 (440 direct, 792 indirect) bytes in 11 blocks are definitely lost in loss
record 27 of 40
> ==22866==    at 0x1B90939A: operator new(unsigned) (vg_replace_malloc.c:132)
> ==22866==    by 0x81989F7: activemq::connector::openwire::OpenWireConnector::createProducer(cms::Destination
const*, activemq::connector::SessionInfo*) (OpenWireConnector.cpp:680)
> ==22866==    by 0x8149324: activemq::core::ActiveMQSession::createProducer(cms::Destination
const*) (ActiveMQSession.cpp:309)
> OpenWireConnector::createProducer allocates a OpenWireProducerInfo which isn't deleted
if the member function returns normally.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message