qpid-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Robbie Gemmell (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (QPIDJMS-438) details of remotely closed Sessions are not removed from the Connection
Date Mon, 17 Dec 2018 10:54:00 GMT

     [ https://issues.apache.org/jira/browse/QPIDJMS-438?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Robbie Gemmell updated QPIDJMS-438:
-----------------------------------
    Description: 
The Connection keeps track of its Sessions for housekeeping purposes, and previously these
details have only been cleaned up fully if the Session close() method is called. If a Session
is remotely closed, further attempts to use it and its resources will throw an exception as
they are then marked closed. It is probable an application wont then call close() on the Session.
 If the application continues using the Connection in such a scenario, then the tracking details
of the closed Session is retained thus leaking a small amount of memory, which if it is repeated
a lot over time may eventually cause problems.

Original Description:
================

We use Qpid JMS to connect to the Azure service bus.

In our applications we cache the connections in a pool and cache a session for each connection
for sending messages.

When Azure believes the connection is idle for 5 minutes it is remotely closed. Resulting
in closing the cached session in the application. The application responds by replacing the
cached session with a newly created session.

The problem here is that the closed sessions are not removed from the connection. Eventually
resulting in an OutOfMemoryError.

  was:
We use Qpid JMS to connect to the Azure service bus.

In our applications we cache the connections in a pool and cache a session for each connection
for sending messages.

When Azure believes the connection is idle for 5 minutes it is remotely closed. Resulting
in closing the cached session in the application. The application responds by replacing the
cached session with a newly created session.

The problem here is that the closed sessions are not removed from the connection. Eventually
resulting in an OutOfMemoryError.


> details of remotely closed Sessions are not removed from the Connection
> -----------------------------------------------------------------------
>
>                 Key: QPIDJMS-438
>                 URL: https://issues.apache.org/jira/browse/QPIDJMS-438
>             Project: Qpid JMS
>          Issue Type: Bug
>          Components: qpid-jms-client
>    Affects Versions: 0.39.0
>            Reporter: David De Franco
>            Assignee: Timothy Bish
>            Priority: Major
>             Fix For: 0.40.0
>
>         Attachments: amqp.log, out-of-memory1.PNG, out-of-memory2.PNG
>
>
> The Connection keeps track of its Sessions for housekeeping purposes, and previously
these details have only been cleaned up fully if the Session close() method is called. If
a Session is remotely closed, further attempts to use it and its resources will throw an exception
as they are then marked closed. It is probable an application wont then call close() on the
Session.  If the application continues using the Connection in such a scenario, then the tracking
details of the closed Session is retained thus leaking a small amount of memory, which if
it is repeated a lot over time may eventually cause problems.
> Original Description:
> ================
> We use Qpid JMS to connect to the Azure service bus.
> In our applications we cache the connections in a pool and cache a session for each connection
for sending messages.
> When Azure believes the connection is idle for 5 minutes it is remotely closed. Resulting
in closing the cached session in the application. The application responds by replacing the
cached session with a newly created session.
> The problem here is that the closed sessions are not removed from the connection. Eventually
resulting in an OutOfMemoryError.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org


Mime
View raw message