Hi
On Wed, Feb 17, 2010 at 4:17 PM, Johan Haleby <[email protected]> wrote:
>
> The debug message ("Closing session when complete at address") is printed all
> the time so it should close the session. I've investigated a bit further and
> I see that the problem seem to be that DefaultProducerTemplate holds a
> SpringCamelContext which in turn holds an ArrayList which seem to contain
> all MinaProducers that has ever been created.
>
> I've uploaded a screenshot of the heap dump:
> http://old.nabble.com/file/p27625230/mina_camel_retaining_resources.png
> mina_camel_retaining_resources.png
>
Are you using a lot of dynamic endpoints which are different?
> /Johan
>
>
> Claus Ibsen-2 wrote:
>>
>> Hi
>>
>> Could you google that exception and see what other Mina users have
>> encountered.
>>
>> And you see this DEBUG logging when you send to that remote endpoint?
>>
>> if (LOG.isDebugEnabled()) {
>> LOG.debug("Closing session when complete at address: "
>> + endpoint.getAddress());
>> }
>>
>>
>>
>> On Wed, Feb 17, 2010 at 3:27 PM, Johan Haleby <[email protected]>
>> wrote:
>>>
>>> Hi,
>>>
>>> I'm running into problems when using Camel (2.1 and 2.2) with Mina
>>> endpoints
>>> configured to disconnect the session after each received message. When
>>> lots
>>> of messages are sent over a longer period of time I eventually run out of
>>> memory and the system either throws OutOfMemoryError or spends long
>>> intervals in GC. When analyzing the heap dump in Eclipse MAT it finds
>>> this
>>> leak suspect:
>>>
>>> 27,840 instances of
>>> "org.apache.mina.transport.socket.nio.SocketSessionImpl", loaded by
>>> "sun.misc.Launcher$AppClassLoader @ 0xad65d850" occupy 20,662,464
>>> (20.42%)
>>> bytes
>>>
>>> The endpoint is configured like:
>>> mina:tcp://localhost:6200?sync=false&textline=false and the message is
>>> sent
>>> to the endpoint using a http://camel.apache.org/recipient-list.html
>>> recipient list .
>>>
>>> What could be the cause of this? E.g. do I need to stop the producer
>>> template after each sent message? Right now the ProducerTemplate is a
>>> singleton used concurrently by multiple threads.
>>>
>>> /Johan
>>> --
>>> View this message in context:
>>> http://old.nabble.com/SocketSessionImpl-in-Mina-component-retained-in-memory-indefinitely-tp27624487p27624487.html
>>> Sent from the Camel - Users mailing list archive at Nabble.com.
>>>
>>>
>>
>>
>>
>> --
>> Claus Ibsen
>> Apache Camel Committer
>>
>> Author of Camel in Action: http://www.manning.com/ibsen/
>> Open Source Integration: http://fusesource.com
>> Blog: http://davsclaus.blogspot.com/
>> Twitter: http://twitter.com/davsclaus
>>
>>
>
> --
> View this message in context:
> http://old.nabble.com/SocketSessionImpl-in-Mina-component-retained-in-memory-indefinitely-tp27624487p27625230.html
> Sent from the Camel - Users mailing list archive at Nabble.com.
>
>
--
Claus Ibsen
Apache Camel Committer
Author of Camel in Action: http://www.manning.com/ibsen/
Open Source Integration: http://fusesource.com
Blog: http://davsclaus.blogspot.com/
Twitter: http://twitter.com/davsclaus