You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@activemq.apache.org by Shine <ac...@club.webhop.org> on 2011/09/09 21:44:25 UTC

C# NMS: After close a connection a couple of handles will not be cleaned up

hi,

if you connect to the message broker and close/dispose everything, few
handles still alive.

expample:

Apache.NMS.IConnectionFactory factory = new
Apache.NMS.NMSConnectionFactory(@"tcp://messagebroker.xabcd.org:61616?wireFormat.maxInactivityDuration=0");

using (Apache.NMS.IConnection connection =
factory.CreateConnection("NotForYourEyes", "NotForYourEyes"))
{
    using (Apache.NMS.ISession session = connection.CreateSession())
    {

        Apache.NMS.IDestination destination = new
Apache.NMS.ActiveMQ.Commands.ActiveMQTopic("{12345678-288C-4787-A9C9-123456789012}/11023");
        using (Apache.NMS.IMessageConsumer consumer =
session.CreateConsumer(destination))
        {
            connection.Start();
        }
    }
}

About 35 handles will not be cleaned up. If you do some reconnects you get
an "OutOfMemory" Exception after a while. 

--
View this message in context: http://activemq.2283324.n4.nabble.com/C-NMS-After-close-a-connection-a-couple-of-handles-will-not-be-cleaned-up-tp3802609p3802609.html
Sent from the ActiveMQ - Dev mailing list archive at Nabble.com.

Re: C# NMS: After close a connection a couple of handles will not be cleaned up

Posted by Shine <ac...@club.webhop.org>.
hi Jim,

thank for your help .. i will remove that parameter and try it again.

best regards
Shine


> The problem is only reproducible with the
> wireFormat.maxInactivityDuration=0parameter.  If this parameter is
> removed, then the thread is cleaned up
> correctly.  Knowing that, I think the fix should be pretty straightforward.

> In the meantime, as a work-around, I would suggest not adding that
> parameter.

> On Mon, Sep 12, 2011 at 6:06 PM, Jim Gomes <e....@gmail.com> wrote:

>> Thanks for the report.  It looks like we are at least leaking threads on
>> the InactivityMonitor.  I've taken the sample provided and used it as a base
>> to reproduce the problem.  I can reproduce a thread leak for every
>> connection that should have been cleaned up via Dispose().  I'll take a
>> closer look at it tomorrow and see if I can narrow it down and come up with
>> a fix.
>>
>> If you have any additional info on what is being leaked, that would be
>> helpful to have.
>>
>> Thanks.
>> -Jim
>>
>>
>> On Sat, Sep 10, 2011 at 9:23 AM, Shine <ac...@club.webhop.org> wrote:
>>
>>> Hi,
>>>
>>> i use the latest binaries from
>>> http://activemq.apache.org/nms/activemq-downloads.html (1.5.1.2341)
>>> and i tried the source code from subversion.
>>>
>>> am Freitag, 9. September 2011 um 21:53 schrieben Sie:
>>>
>>>
>>>
>>> > On Fri, 2011-09-09 at 12:44 -0700, Shine wrote:
>>> >> hi,
>>> >>
>>> >> if you connect to the message broker and close/dispose everything, few
>>> >> handles still alive.
>>> >>
>>> >> expample:
>>> >>
>>> >> Apache.NMS.IConnectionFactory factory = new
>>> >> Apache.NMS.NMSConnectionFactory(@"tcp://
>>> messagebroker.xabcd.org:61616?wireFormat.maxInactivityDuration=0");
>>> >>
>>> >> using (Apache.NMS.IConnection connection =
>>> >> factory.CreateConnection("NotForYourEyes", "NotForYourEyes"))
>>> >> {
>>> >>     using (Apache.NMS.ISession session = connection.CreateSession())
>>> >>     {
>>> >>
>>> >>         Apache.NMS.IDestination destination = new
>>> >>
>>> Apache.NMS.ActiveMQ.Commands.ActiveMQTopic("{12345678-288C-4787-A9C9-123456789012}/11023");
>>> >>         using (Apache.NMS.IMessageConsumer consumer =
>>> >> session.CreateConsumer(destination))
>>> >>         {
>>> >>             connection.Start();
>>> >>         }
>>> >>     }
>>> >> }
>>> >>
>>> >> About 35 handles will not be cleaned up. If you do some reconnects you
>>> get
>>> >> an "OutOfMemory" Exception after a while.
>>> >>
>>> >> --
>>> >> View this message in context:
>>> http://activemq.2283324.n4.nabble.com/C-NMS-After-close-a-connection-a-couple-of-handles-will-not-be-cleaned-up-tp3802609p3802609.html
>>> >> Sent from the ActiveMQ - Dev mailing list archive at Nabble.com.
>>>
>>> > Usually helpful to let us know what version you are using, there were
>>> > some things like this fixed in past releases, if not on v1.5.1 then I'd
>>> > suggest giving that a try.
>>>
>>> > Regards
>>>
>>>
>>>
>>>
>>>
>>> --
>>> Mit freundlichen Grüßen
>>> activemq@club.webhop.org
>>> mailto:activemq@club.webhop.org
>>>
>>>
>>>
>>> --
>>> View this message in context:
>>> http://activemq.2283324.n4.nabble.com/C-NMS-After-close-a-connection-a-couple-of-handles-will-not-be-cleaned-up-tp3802609p3804031.html
>>> Sent from the ActiveMQ - Dev mailing list archive at Nabble.com.
>>>
>>
>>


> _______________________________________________
> If you reply to this email, your message will be added to the discussion below:
> http://activemq.2283324.n4.nabble.com/C-NMS-After-close-a-connection-a-couple-of-handles-will-not-be-cleaned-up-tp3802609p3813830.html

> To unsubscribe from C# NMS: After close a connection a couple of
> handles will not be cleaned up, visit
> http://activemq.2283324.n4.nabble.com/template/NamlServlet.jtp?macro=unsubscribe_by_code&node=3802609&code=YWN0aXZlbXFAY2x1Yi53ZWJob3Aub3JnfDM4MDI2MDl8MTE4Nzc0MjAzMQ==



-- 
Mit freundlichen Grüßen
activemq@club.webhop.org
mailto:activemq@club.webhop.org



--
View this message in context: http://activemq.2283324.n4.nabble.com/C-NMS-After-close-a-connection-a-couple-of-handles-will-not-be-cleaned-up-tp3802609p3813950.html
Sent from the ActiveMQ - Dev mailing list archive at Nabble.com.

Re: C# NMS: After close a connection a couple of handles will not be cleaned up

Posted by Shine <ac...@club.webhop.org>.
Hi Jim,

thank for fixing the issue so quick. i will give you a response/report if it
works or not.

best regards
Shine

> A fix has been applied to the 1.5.x branch version of Apache.NMS.ActiveMQ.
>  It will be included in the 1.5.2 version when it ships.  You can track the
> issue here:

> https://issues.apache.org/jira/browse/AMQNET-343

> Thanks!  If you encounter any more issue, please log them in the Jira
> database.

> Have a great weekend!

> On Thu, Sep 15, 2011 at 2:16 AM, Shine <ac...@club.webhop.org> wrote:

>> hi Frank,
>>
>> .. without this parameter it works fine.
>> .. with "wireFormat.maxInactivityDuration=300000" it also works fine.
>>
>>
>> regards,
>> Shine
>>
>>
>>
>> > Hi,
>> > quick question - will there be a leak even when using a value other than
>> > "0"?
>> > Example:
>>
>> > wireFormat.maxInactivityDuration=300000 (5 minutes).
>>
>> > Best regards,
>> > Frank
>>
>>
>> > On 14.09.2011 21:03, Jim Gomes wrote:
>> >> The problem is only reproducible with the
>> >> wireFormat.maxInactivityDuration=0parameter.  If this parameter is
>> >> removed, then the thread is cleaned up
>> >> correctly.  Knowing that, I think the fix should be pretty
>> straightforward.
>> >>
>> >> In the meantime, as a work-around, I would suggest not adding that
>> >> parameter.
>> >>
>> >> On Mon, Sep 12, 2011 at 6:06 PM, Jim Gomes<e....@gmail.com>  wrote:
>> >>
>> >>> Thanks for the report.  It looks like we are at least leaking threads
>> on
>> >>> the InactivityMonitor.  I've taken the sample provided and used it as a
>> base
>> >>> to reproduce the problem.  I can reproduce a thread leak for every
>> >>> connection that should have been cleaned up via Dispose().  I'll take a
>> >>> closer look at it tomorrow and see if I can narrow it down and come up
>> with
>> >>> a fix.
>> >>>
>> >>> If you have any additional info on what is being leaked, that would be
>> >>> helpful to have.
>> >>>
>> >>> Thanks.
>> >>> -Jim
>> >>>
>> >>>
>> >>> On Sat, Sep 10, 2011 at 9:23 AM, Shine<ac...@club.webhop.org>
>>  wrote:
>> >>>
>> >>>> Hi,
>> >>>>
>> >>>> i use the latest binaries from
>> >>>> http://activemq.apache.org/nms/activemq-downloads.html (1.5.1.2341)
>> >>>> and i tried the source code from subversion.
>> >>>>
>> >>>> am Freitag, 9. September 2011 um 21:53 schrieben Sie:
>> >>>>
>> >>>>
>> >>>>
>> >>>>> On Fri, 2011-09-09 at 12:44 -0700, Shine wrote:
>> >>>>>> hi,
>> >>>>>>
>> >>>>>> if you connect to the message broker and close/dispose everything,
>> few
>> >>>>>> handles still alive.
>> >>>>>>
>> >>>>>> expample:
>> >>>>>>
>> >>>>>> Apache.NMS.IConnectionFactory factory = new
>> >>>>>> Apache.NMS.NMSConnectionFactory(@"tcp://
>> >>>> messagebroker.xabcd.org:61616?wireFormat.maxInactivityDuration=0");
>> >>>>>> using (Apache.NMS.IConnection connection =
>> >>>>>> factory.CreateConnection("NotForYourEyes", "NotForYourEyes"))
>> >>>>>> {
>> >>>>>>      using (Apache.NMS.ISession session =
>> connection.CreateSession())
>> >>>>>>      {
>> >>>>>>
>> >>>>>>          Apache.NMS.IDestination destination = new
>> >>>>>>
>> >>>>
>> Apache.NMS.ActiveMQ.Commands.ActiveMQTopic("{12345678-288C-4787-A9C9-123456789012}/11023");
>> >>>>>>          using (Apache.NMS.IMessageConsumer consumer =
>> >>>>>> session.CreateConsumer(destination))
>> >>>>>>          {
>> >>>>>>              connection.Start();
>> >>>>>>          }
>> >>>>>>      }
>> >>>>>> }
>> >>>>>>
>> >>>>>> About 35 handles will not be cleaned up. If you do some reconnects
>> you
>> >>>> get
>> >>>>>> an "OutOfMemory" Exception after a while.
>> >>>>>>
>> >>>>>> --
>> >>>>>> View this message in context:
>> >>>>
>> http://activemq.2283324.n4.nabble.com/C-NMS-After-close-a-connection-a-couple-of-handles-will-not-be-cleaned-up-tp3802609p3802609.html
>> >>>>>> Sent from the ActiveMQ - Dev mailing list archive at Nabble.com.
>> >>>>> Usually helpful to let us know what version you are using, there were
>> >>>>> some things like this fixed in past releases, if not on v1.5.1 then
>> I'd
>> >>>>> suggest giving that a try.
>> >>>>> Regards
>> >>>>
>> >>>>
>> >>>>
>> >>>>
>> >>>> --
>> >>>> Mit freundlichen Grüßen
>> >>>> activemq@club.webhop.org
>> >>>> mailto:activemq@club.webhop.org
>> >>>>
>> >>>>
>> >>>>
>> >>>> --
>> >>>> View this message in context:
>> >>>>
>> http://activemq.2283324.n4.nabble.com/C-NMS-After-close-a-connection-a-couple-of-handles-will-not-be-cleaned-up-tp3802609p3804031.html
>> >>>> Sent from the ActiveMQ - Dev mailing list archive at Nabble.com.
>> >>>>
>> >>>
>>
>>
>>
>> > _______________________________________________
>> > If you reply to this email, your message will be added to the discussion
>> below:
>> >
>> http://activemq.2283324.n4.nabble.com/C-NMS-After-close-a-connection-a-couple-of-handles-will-not-be-cleaned-up-tp3802609p3814856.html
>>
>> > To unsubscribe from C# NMS: After close a connection a couple of
>> > handles will not be cleaned up, visit
>> >
>> http://activemq.2283324.n4.nabble.com/template/NamlServlet.jtp?macro=unsubscribe_by_code&node=3802609&code=YWN0aXZlbXFAY2x1Yi53ZWJob3Aub3JnfDM4MDI2MDl8MTE4Nzc0MjAzMQ==
>>
>>
>>
>>
>> --
>> View this message in context:
>> http://activemq.2283324.n4.nabble.com/C-NMS-After-close-a-connection-a-couple-of-handles-will-not-be-cleaned-up-tp3802609p3815069.html
>> Sent from the ActiveMQ - Dev mailing list archive at Nabble.com.
>>




--
View this message in context: http://activemq.2283324.n4.nabble.com/C-NMS-After-close-a-connection-a-couple-of-handles-will-not-be-cleaned-up-tp3802609p3819776.html
Sent from the ActiveMQ - Dev mailing list archive at Nabble.com.

Re: C# NMS: After close a connection a couple of handles will not be cleaned up

Posted by Jim Gomes <e....@gmail.com>.
A fix has been applied to the 1.5.x branch version of Apache.NMS.ActiveMQ.
 It will be included in the 1.5.2 version when it ships.  You can track the
issue here:

https://issues.apache.org/jira/browse/AMQNET-343

Thanks!  If you encounter any more issue, please log them in the Jira
database.

Have a great weekend!

On Thu, Sep 15, 2011 at 2:16 AM, Shine <ac...@club.webhop.org> wrote:

> hi Frank,
>
> .. without this parameter it works fine.
> .. with "wireFormat.maxInactivityDuration=300000" it also works fine.
>
>
> regards,
> Shine
>
>
>
> > Hi,
> > quick question - will there be a leak even when using a value other than
> > "0"?
> > Example:
>
> > wireFormat.maxInactivityDuration=300000 (5 minutes).
>
> > Best regards,
> > Frank
>
>
> > On 14.09.2011 21:03, Jim Gomes wrote:
> >> The problem is only reproducible with the
> >> wireFormat.maxInactivityDuration=0parameter.  If this parameter is
> >> removed, then the thread is cleaned up
> >> correctly.  Knowing that, I think the fix should be pretty
> straightforward.
> >>
> >> In the meantime, as a work-around, I would suggest not adding that
> >> parameter.
> >>
> >> On Mon, Sep 12, 2011 at 6:06 PM, Jim Gomes<e....@gmail.com>  wrote:
> >>
> >>> Thanks for the report.  It looks like we are at least leaking threads
> on
> >>> the InactivityMonitor.  I've taken the sample provided and used it as a
> base
> >>> to reproduce the problem.  I can reproduce a thread leak for every
> >>> connection that should have been cleaned up via Dispose().  I'll take a
> >>> closer look at it tomorrow and see if I can narrow it down and come up
> with
> >>> a fix.
> >>>
> >>> If you have any additional info on what is being leaked, that would be
> >>> helpful to have.
> >>>
> >>> Thanks.
> >>> -Jim
> >>>
> >>>
> >>> On Sat, Sep 10, 2011 at 9:23 AM, Shine<ac...@club.webhop.org>
>  wrote:
> >>>
> >>>> Hi,
> >>>>
> >>>> i use the latest binaries from
> >>>> http://activemq.apache.org/nms/activemq-downloads.html (1.5.1.2341)
> >>>> and i tried the source code from subversion.
> >>>>
> >>>> am Freitag, 9. September 2011 um 21:53 schrieben Sie:
> >>>>
> >>>>
> >>>>
> >>>>> On Fri, 2011-09-09 at 12:44 -0700, Shine wrote:
> >>>>>> hi,
> >>>>>>
> >>>>>> if you connect to the message broker and close/dispose everything,
> few
> >>>>>> handles still alive.
> >>>>>>
> >>>>>> expample:
> >>>>>>
> >>>>>> Apache.NMS.IConnectionFactory factory = new
> >>>>>> Apache.NMS.NMSConnectionFactory(@"tcp://
> >>>> messagebroker.xabcd.org:61616?wireFormat.maxInactivityDuration=0");
> >>>>>> using (Apache.NMS.IConnection connection =
> >>>>>> factory.CreateConnection("NotForYourEyes", "NotForYourEyes"))
> >>>>>> {
> >>>>>>      using (Apache.NMS.ISession session =
> connection.CreateSession())
> >>>>>>      {
> >>>>>>
> >>>>>>          Apache.NMS.IDestination destination = new
> >>>>>>
> >>>>
> Apache.NMS.ActiveMQ.Commands.ActiveMQTopic("{12345678-288C-4787-A9C9-123456789012}/11023");
> >>>>>>          using (Apache.NMS.IMessageConsumer consumer =
> >>>>>> session.CreateConsumer(destination))
> >>>>>>          {
> >>>>>>              connection.Start();
> >>>>>>          }
> >>>>>>      }
> >>>>>> }
> >>>>>>
> >>>>>> About 35 handles will not be cleaned up. If you do some reconnects
> you
> >>>> get
> >>>>>> an "OutOfMemory" Exception after a while.
> >>>>>>
> >>>>>> --
> >>>>>> View this message in context:
> >>>>
> http://activemq.2283324.n4.nabble.com/C-NMS-After-close-a-connection-a-couple-of-handles-will-not-be-cleaned-up-tp3802609p3802609.html
> >>>>>> Sent from the ActiveMQ - Dev mailing list archive at Nabble.com.
> >>>>> Usually helpful to let us know what version you are using, there were
> >>>>> some things like this fixed in past releases, if not on v1.5.1 then
> I'd
> >>>>> suggest giving that a try.
> >>>>> Regards
> >>>>
> >>>>
> >>>>
> >>>>
> >>>> --
> >>>> Mit freundlichen Grüßen
> >>>> activemq@club.webhop.org
> >>>> mailto:activemq@club.webhop.org
> >>>>
> >>>>
> >>>>
> >>>> --
> >>>> View this message in context:
> >>>>
> http://activemq.2283324.n4.nabble.com/C-NMS-After-close-a-connection-a-couple-of-handles-will-not-be-cleaned-up-tp3802609p3804031.html
> >>>> Sent from the ActiveMQ - Dev mailing list archive at Nabble.com.
> >>>>
> >>>
>
>
>
> > _______________________________________________
> > If you reply to this email, your message will be added to the discussion
> below:
> >
> http://activemq.2283324.n4.nabble.com/C-NMS-After-close-a-connection-a-couple-of-handles-will-not-be-cleaned-up-tp3802609p3814856.html
>
> > To unsubscribe from C# NMS: After close a connection a couple of
> > handles will not be cleaned up, visit
> >
> http://activemq.2283324.n4.nabble.com/template/NamlServlet.jtp?macro=unsubscribe_by_code&node=3802609&code=YWN0aXZlbXFAY2x1Yi53ZWJob3Aub3JnfDM4MDI2MDl8MTE4Nzc0MjAzMQ==
>
>
>
>
> --
> View this message in context:
> http://activemq.2283324.n4.nabble.com/C-NMS-After-close-a-connection-a-couple-of-handles-will-not-be-cleaned-up-tp3802609p3815069.html
> Sent from the ActiveMQ - Dev mailing list archive at Nabble.com.
>

Re: C# NMS: After close a connection a couple of handles will not be cleaned up

Posted by Shine <ac...@club.webhop.org>.
hi Frank,

.. without this parameter it works fine.
.. with "wireFormat.maxInactivityDuration=300000" it also works fine.


regards,
Shine



> Hi,
> quick question - will there be a leak even when using a value other than
> "0"?
> Example:

> wireFormat.maxInactivityDuration=300000 (5 minutes).

> Best regards,
> Frank


> On 14.09.2011 21:03, Jim Gomes wrote:
>> The problem is only reproducible with the
>> wireFormat.maxInactivityDuration=0parameter.  If this parameter is
>> removed, then the thread is cleaned up
>> correctly.  Knowing that, I think the fix should be pretty straightforward.
>>
>> In the meantime, as a work-around, I would suggest not adding that
>> parameter.
>>
>> On Mon, Sep 12, 2011 at 6:06 PM, Jim Gomes<e....@gmail.com>  wrote:
>>
>>> Thanks for the report.  It looks like we are at least leaking threads on
>>> the InactivityMonitor.  I've taken the sample provided and used it as a base
>>> to reproduce the problem.  I can reproduce a thread leak for every
>>> connection that should have been cleaned up via Dispose().  I'll take a
>>> closer look at it tomorrow and see if I can narrow it down and come up with
>>> a fix.
>>>
>>> If you have any additional info on what is being leaked, that would be
>>> helpful to have.
>>>
>>> Thanks.
>>> -Jim
>>>
>>>
>>> On Sat, Sep 10, 2011 at 9:23 AM, Shine<ac...@club.webhop.org>  wrote:
>>>
>>>> Hi,
>>>>
>>>> i use the latest binaries from
>>>> http://activemq.apache.org/nms/activemq-downloads.html (1.5.1.2341)
>>>> and i tried the source code from subversion.
>>>>
>>>> am Freitag, 9. September 2011 um 21:53 schrieben Sie:
>>>>
>>>>
>>>>
>>>>> On Fri, 2011-09-09 at 12:44 -0700, Shine wrote:
>>>>>> hi,
>>>>>>
>>>>>> if you connect to the message broker and close/dispose everything, few
>>>>>> handles still alive.
>>>>>>
>>>>>> expample:
>>>>>>
>>>>>> Apache.NMS.IConnectionFactory factory = new
>>>>>> Apache.NMS.NMSConnectionFactory(@"tcp://
>>>> messagebroker.xabcd.org:61616?wireFormat.maxInactivityDuration=0");
>>>>>> using (Apache.NMS.IConnection connection =
>>>>>> factory.CreateConnection("NotForYourEyes", "NotForYourEyes"))
>>>>>> {
>>>>>>      using (Apache.NMS.ISession session = connection.CreateSession())
>>>>>>      {
>>>>>>
>>>>>>          Apache.NMS.IDestination destination = new
>>>>>>
>>>> Apache.NMS.ActiveMQ.Commands.ActiveMQTopic("{12345678-288C-4787-A9C9-123456789012}/11023");
>>>>>>          using (Apache.NMS.IMessageConsumer consumer =
>>>>>> session.CreateConsumer(destination))
>>>>>>          {
>>>>>>              connection.Start();
>>>>>>          }
>>>>>>      }
>>>>>> }
>>>>>>
>>>>>> About 35 handles will not be cleaned up. If you do some reconnects you
>>>> get
>>>>>> an "OutOfMemory" Exception after a while.
>>>>>>
>>>>>> --
>>>>>> View this message in context:
>>>> http://activemq.2283324.n4.nabble.com/C-NMS-After-close-a-connection-a-couple-of-handles-will-not-be-cleaned-up-tp3802609p3802609.html
>>>>>> Sent from the ActiveMQ - Dev mailing list archive at Nabble.com.
>>>>> Usually helpful to let us know what version you are using, there were
>>>>> some things like this fixed in past releases, if not on v1.5.1 then I'd
>>>>> suggest giving that a try.
>>>>> Regards
>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Mit freundlichen Grüßen
>>>> activemq@club.webhop.org
>>>> mailto:activemq@club.webhop.org
>>>>
>>>>
>>>>
>>>> --
>>>> View this message in context:
>>>> http://activemq.2283324.n4.nabble.com/C-NMS-After-close-a-connection-a-couple-of-handles-will-not-be-cleaned-up-tp3802609p3804031.html
>>>> Sent from the ActiveMQ - Dev mailing list archive at Nabble.com.
>>>>
>>>



> _______________________________________________
> If you reply to this email, your message will be added to the discussion below:
> http://activemq.2283324.n4.nabble.com/C-NMS-After-close-a-connection-a-couple-of-handles-will-not-be-cleaned-up-tp3802609p3814856.html

> To unsubscribe from C# NMS: After close a connection a couple of
> handles will not be cleaned up, visit
> http://activemq.2283324.n4.nabble.com/template/NamlServlet.jtp?macro=unsubscribe_by_code&node=3802609&code=YWN0aXZlbXFAY2x1Yi53ZWJob3Aub3JnfDM4MDI2MDl8MTE4Nzc0MjAzMQ==




--
View this message in context: http://activemq.2283324.n4.nabble.com/C-NMS-After-close-a-connection-a-couple-of-handles-will-not-be-cleaned-up-tp3802609p3815069.html
Sent from the ActiveMQ - Dev mailing list archive at Nabble.com.

Re: C# NMS: After close a connection a couple of handles will not be cleaned up

Posted by Frank Gynnild <fr...@gynnild.com>.
Hi,
quick question - will there be a leak even when using a value other than 
"0"?
Example:

wireFormat.maxInactivityDuration=300000 (5 minutes).

Best regards,
Frank


On 14.09.2011 21:03, Jim Gomes wrote:
> The problem is only reproducible with the
> wireFormat.maxInactivityDuration=0parameter.  If this parameter is
> removed, then the thread is cleaned up
> correctly.  Knowing that, I think the fix should be pretty straightforward.
>
> In the meantime, as a work-around, I would suggest not adding that
> parameter.
>
> On Mon, Sep 12, 2011 at 6:06 PM, Jim Gomes<e....@gmail.com>  wrote:
>
>> Thanks for the report.  It looks like we are at least leaking threads on
>> the InactivityMonitor.  I've taken the sample provided and used it as a base
>> to reproduce the problem.  I can reproduce a thread leak for every
>> connection that should have been cleaned up via Dispose().  I'll take a
>> closer look at it tomorrow and see if I can narrow it down and come up with
>> a fix.
>>
>> If you have any additional info on what is being leaked, that would be
>> helpful to have.
>>
>> Thanks.
>> -Jim
>>
>>
>> On Sat, Sep 10, 2011 at 9:23 AM, Shine<ac...@club.webhop.org>  wrote:
>>
>>> Hi,
>>>
>>> i use the latest binaries from
>>> http://activemq.apache.org/nms/activemq-downloads.html (1.5.1.2341)
>>> and i tried the source code from subversion.
>>>
>>> am Freitag, 9. September 2011 um 21:53 schrieben Sie:
>>>
>>>
>>>
>>>> On Fri, 2011-09-09 at 12:44 -0700, Shine wrote:
>>>>> hi,
>>>>>
>>>>> if you connect to the message broker and close/dispose everything, few
>>>>> handles still alive.
>>>>>
>>>>> expample:
>>>>>
>>>>> Apache.NMS.IConnectionFactory factory = new
>>>>> Apache.NMS.NMSConnectionFactory(@"tcp://
>>> messagebroker.xabcd.org:61616?wireFormat.maxInactivityDuration=0");
>>>>> using (Apache.NMS.IConnection connection =
>>>>> factory.CreateConnection("NotForYourEyes", "NotForYourEyes"))
>>>>> {
>>>>>      using (Apache.NMS.ISession session = connection.CreateSession())
>>>>>      {
>>>>>
>>>>>          Apache.NMS.IDestination destination = new
>>>>>
>>> Apache.NMS.ActiveMQ.Commands.ActiveMQTopic("{12345678-288C-4787-A9C9-123456789012}/11023");
>>>>>          using (Apache.NMS.IMessageConsumer consumer =
>>>>> session.CreateConsumer(destination))
>>>>>          {
>>>>>              connection.Start();
>>>>>          }
>>>>>      }
>>>>> }
>>>>>
>>>>> About 35 handles will not be cleaned up. If you do some reconnects you
>>> get
>>>>> an "OutOfMemory" Exception after a while.
>>>>>
>>>>> --
>>>>> View this message in context:
>>> http://activemq.2283324.n4.nabble.com/C-NMS-After-close-a-connection-a-couple-of-handles-will-not-be-cleaned-up-tp3802609p3802609.html
>>>>> Sent from the ActiveMQ - Dev mailing list archive at Nabble.com.
>>>> Usually helpful to let us know what version you are using, there were
>>>> some things like this fixed in past releases, if not on v1.5.1 then I'd
>>>> suggest giving that a try.
>>>> Regards
>>>
>>>
>>>
>>>
>>> --
>>> Mit freundlichen Grüßen
>>> activemq@club.webhop.org
>>> mailto:activemq@club.webhop.org
>>>
>>>
>>>
>>> --
>>> View this message in context:
>>> http://activemq.2283324.n4.nabble.com/C-NMS-After-close-a-connection-a-couple-of-handles-will-not-be-cleaned-up-tp3802609p3804031.html
>>> Sent from the ActiveMQ - Dev mailing list archive at Nabble.com.
>>>
>>


Re: C# NMS: After close a connection a couple of handles will not be cleaned up

Posted by Jim Gomes <e....@gmail.com>.
The problem is only reproducible with the
wireFormat.maxInactivityDuration=0parameter.  If this parameter is
removed, then the thread is cleaned up
correctly.  Knowing that, I think the fix should be pretty straightforward.

In the meantime, as a work-around, I would suggest not adding that
parameter.

On Mon, Sep 12, 2011 at 6:06 PM, Jim Gomes <e....@gmail.com> wrote:

> Thanks for the report.  It looks like we are at least leaking threads on
> the InactivityMonitor.  I've taken the sample provided and used it as a base
> to reproduce the problem.  I can reproduce a thread leak for every
> connection that should have been cleaned up via Dispose().  I'll take a
> closer look at it tomorrow and see if I can narrow it down and come up with
> a fix.
>
> If you have any additional info on what is being leaked, that would be
> helpful to have.
>
> Thanks.
> -Jim
>
>
> On Sat, Sep 10, 2011 at 9:23 AM, Shine <ac...@club.webhop.org> wrote:
>
>> Hi,
>>
>> i use the latest binaries from
>> http://activemq.apache.org/nms/activemq-downloads.html (1.5.1.2341)
>> and i tried the source code from subversion.
>>
>> am Freitag, 9. September 2011 um 21:53 schrieben Sie:
>>
>>
>>
>> > On Fri, 2011-09-09 at 12:44 -0700, Shine wrote:
>> >> hi,
>> >>
>> >> if you connect to the message broker and close/dispose everything, few
>> >> handles still alive.
>> >>
>> >> expample:
>> >>
>> >> Apache.NMS.IConnectionFactory factory = new
>> >> Apache.NMS.NMSConnectionFactory(@"tcp://
>> messagebroker.xabcd.org:61616?wireFormat.maxInactivityDuration=0");
>> >>
>> >> using (Apache.NMS.IConnection connection =
>> >> factory.CreateConnection("NotForYourEyes", "NotForYourEyes"))
>> >> {
>> >>     using (Apache.NMS.ISession session = connection.CreateSession())
>> >>     {
>> >>
>> >>         Apache.NMS.IDestination destination = new
>> >>
>> Apache.NMS.ActiveMQ.Commands.ActiveMQTopic("{12345678-288C-4787-A9C9-123456789012}/11023");
>> >>         using (Apache.NMS.IMessageConsumer consumer =
>> >> session.CreateConsumer(destination))
>> >>         {
>> >>             connection.Start();
>> >>         }
>> >>     }
>> >> }
>> >>
>> >> About 35 handles will not be cleaned up. If you do some reconnects you
>> get
>> >> an "OutOfMemory" Exception after a while.
>> >>
>> >> --
>> >> View this message in context:
>> http://activemq.2283324.n4.nabble.com/C-NMS-After-close-a-connection-a-couple-of-handles-will-not-be-cleaned-up-tp3802609p3802609.html
>> >> Sent from the ActiveMQ - Dev mailing list archive at Nabble.com.
>>
>> > Usually helpful to let us know what version you are using, there were
>> > some things like this fixed in past releases, if not on v1.5.1 then I'd
>> > suggest giving that a try.
>>
>> > Regards
>>
>>
>>
>>
>>
>> --
>> Mit freundlichen Grüßen
>> activemq@club.webhop.org
>> mailto:activemq@club.webhop.org
>>
>>
>>
>> --
>> View this message in context:
>> http://activemq.2283324.n4.nabble.com/C-NMS-After-close-a-connection-a-couple-of-handles-will-not-be-cleaned-up-tp3802609p3804031.html
>> Sent from the ActiveMQ - Dev mailing list archive at Nabble.com.
>>
>
>

Re: C# NMS: After close a connection a couple of handles will not be cleaned up

Posted by Jim Gomes <e....@gmail.com>.
Thanks for the report.  It looks like we are at least leaking threads on the
InactivityMonitor.  I've taken the sample provided and used it as a base to
reproduce the problem.  I can reproduce a thread leak for every connection
that should have been cleaned up via Dispose().  I'll take a closer look at
it tomorrow and see if I can narrow it down and come up with a fix.

If you have any additional info on what is being leaked, that would be
helpful to have.

Thanks.
-Jim


On Sat, Sep 10, 2011 at 9:23 AM, Shine <ac...@club.webhop.org> wrote:

> Hi,
>
> i use the latest binaries from
> http://activemq.apache.org/nms/activemq-downloads.html (1.5.1.2341)
> and i tried the source code from subversion.
>
> am Freitag, 9. September 2011 um 21:53 schrieben Sie:
>
>
>
> > On Fri, 2011-09-09 at 12:44 -0700, Shine wrote:
> >> hi,
> >>
> >> if you connect to the message broker and close/dispose everything, few
> >> handles still alive.
> >>
> >> expample:
> >>
> >> Apache.NMS.IConnectionFactory factory = new
> >> Apache.NMS.NMSConnectionFactory(@"tcp://
> messagebroker.xabcd.org:61616?wireFormat.maxInactivityDuration=0");
> >>
> >> using (Apache.NMS.IConnection connection =
> >> factory.CreateConnection("NotForYourEyes", "NotForYourEyes"))
> >> {
> >>     using (Apache.NMS.ISession session = connection.CreateSession())
> >>     {
> >>
> >>         Apache.NMS.IDestination destination = new
> >>
> Apache.NMS.ActiveMQ.Commands.ActiveMQTopic("{12345678-288C-4787-A9C9-123456789012}/11023");
> >>         using (Apache.NMS.IMessageConsumer consumer =
> >> session.CreateConsumer(destination))
> >>         {
> >>             connection.Start();
> >>         }
> >>     }
> >> }
> >>
> >> About 35 handles will not be cleaned up. If you do some reconnects you
> get
> >> an "OutOfMemory" Exception after a while.
> >>
> >> --
> >> View this message in context:
> http://activemq.2283324.n4.nabble.com/C-NMS-After-close-a-connection-a-couple-of-handles-will-not-be-cleaned-up-tp3802609p3802609.html
> >> Sent from the ActiveMQ - Dev mailing list archive at Nabble.com.
>
> > Usually helpful to let us know what version you are using, there were
> > some things like this fixed in past releases, if not on v1.5.1 then I'd
> > suggest giving that a try.
>
> > Regards
>
>
>
>
>
> --
> Mit freundlichen Grüßen
> activemq@club.webhop.org
> mailto:activemq@club.webhop.org
>
>
>
> --
> View this message in context:
> http://activemq.2283324.n4.nabble.com/C-NMS-After-close-a-connection-a-couple-of-handles-will-not-be-cleaned-up-tp3802609p3804031.html
> Sent from the ActiveMQ - Dev mailing list archive at Nabble.com.
>

Re: C# NMS: After close a connection a couple of handles will not be cleaned up

Posted by Shine <ac...@club.webhop.org>.
Hi,

i use the latest binaries from
http://activemq.apache.org/nms/activemq-downloads.html (1.5.1.2341)
and i tried the source code from subversion.

am Freitag, 9. September 2011 um 21:53 schrieben Sie:



> On Fri, 2011-09-09 at 12:44 -0700, Shine wrote:
>> hi,
>> 
>> if you connect to the message broker and close/dispose everything, few
>> handles still alive.
>> 
>> expample:
>> 
>> Apache.NMS.IConnectionFactory factory = new
>> Apache.NMS.NMSConnectionFactory(@"tcp://messagebroker.xabcd.org:61616?wireFormat.maxInactivityDuration=0");
>> 
>> using (Apache.NMS.IConnection connection =
>> factory.CreateConnection("NotForYourEyes", "NotForYourEyes"))
>> {
>>     using (Apache.NMS.ISession session = connection.CreateSession())
>>     {
>> 
>>         Apache.NMS.IDestination destination = new
>> Apache.NMS.ActiveMQ.Commands.ActiveMQTopic("{12345678-288C-4787-A9C9-123456789012}/11023");
>>         using (Apache.NMS.IMessageConsumer consumer =
>> session.CreateConsumer(destination))
>>         {
>>             connection.Start();
>>         }
>>     }
>> }
>> 
>> About 35 handles will not be cleaned up. If you do some reconnects you get
>> an "OutOfMemory" Exception after a while. 
>> 
>> --
>> View this message in context: http://activemq.2283324.n4.nabble.com/C-NMS-After-close-a-connection-a-couple-of-handles-will-not-be-cleaned-up-tp3802609p3802609.html
>> Sent from the ActiveMQ - Dev mailing list archive at Nabble.com.

> Usually helpful to let us know what version you are using, there were
> some things like this fixed in past releases, if not on v1.5.1 then I'd
> suggest giving that a try.

> Regards





-- 
Mit freundlichen Grüßen
activemq@club.webhop.org
mailto:activemq@club.webhop.org



--
View this message in context: http://activemq.2283324.n4.nabble.com/C-NMS-After-close-a-connection-a-couple-of-handles-will-not-be-cleaned-up-tp3802609p3804031.html
Sent from the ActiveMQ - Dev mailing list archive at Nabble.com.

Re: C# NMS: After close a connection a couple of handles will not be cleaned up

Posted by Timothy Bish <ta...@gmail.com>.
On Fri, 2011-09-09 at 12:44 -0700, Shine wrote:
> hi,
> 
> if you connect to the message broker and close/dispose everything, few
> handles still alive.
> 
> expample:
> 
> Apache.NMS.IConnectionFactory factory = new
> Apache.NMS.NMSConnectionFactory(@"tcp://messagebroker.xabcd.org:61616?wireFormat.maxInactivityDuration=0");
> 
> using (Apache.NMS.IConnection connection =
> factory.CreateConnection("NotForYourEyes", "NotForYourEyes"))
> {
>     using (Apache.NMS.ISession session = connection.CreateSession())
>     {
> 
>         Apache.NMS.IDestination destination = new
> Apache.NMS.ActiveMQ.Commands.ActiveMQTopic("{12345678-288C-4787-A9C9-123456789012}/11023");
>         using (Apache.NMS.IMessageConsumer consumer =
> session.CreateConsumer(destination))
>         {
>             connection.Start();
>         }
>     }
> }
> 
> About 35 handles will not be cleaned up. If you do some reconnects you get
> an "OutOfMemory" Exception after a while. 
> 
> --
> View this message in context: http://activemq.2283324.n4.nabble.com/C-NMS-After-close-a-connection-a-couple-of-handles-will-not-be-cleaned-up-tp3802609p3802609.html
> Sent from the ActiveMQ - Dev mailing list archive at Nabble.com.

Usually helpful to let us know what version you are using, there were
some things like this fixed in past releases, if not on v1.5.1 then I'd
suggest giving that a try.

Regards


-- 
Tim Bish
------------
FuseSource
Email: tim.bish@fusesource.com
Web: http://fusesource.com
Twitter: tabish121
Blog: http://timbish.blogspot.com/