camel-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Claus Ibsen <claus.ib...@gmail.com>
Subject Re: ConsumerTemplate and OOM exception
Date Fri, 26 Mar 2010 07:13:35 GMT
On Fri, Mar 26, 2010 at 7:57 AM, Norman Maurer
<norman.maurer@googlemail.com> wrote:
> Just to follow up on this.. It seems like I overwrote my startup file
> and so the -Xmx512m was not there anymore.. After adding it back I
> don't saw the OOM anymore..
>

Great news that the memory issue is resolved. Yeah the JVM need a
little more than the default values to run :)


> Thx for all your help,
>
> Norman
>
>
> 2010/3/23 Norman Maurer <norman.maurer@googlemail.com>:
>> Will do..
>>
>> Bye,
>> Norman
>>
>>
>> 2010/3/23 Claus Ibsen <claus.ibsen@gmail.com>:
>>> Hi
>>>
>>> Also if its possible. Can you let it run as it is now for a while, and
>>> then connect using JConsole to see the JMX stats.
>>>
>>> Then check under Camel if there is many MBeans, eg especially under
>>> endpoints. I suspect the JMSSelector makes Camel register many
>>> endpoints in MBean,
>>> since the JMSSelector is unique.
>>>
>>> It would be good to have this confirmed.
>>>
>>> Then afterwards you can disable JMX in Camel as shown below and try again.
>>>
>>>
>>> On Tue, Mar 23, 2010 at 8:08 AM, Claus Ibsen <claus.ibsen@gmail.com> wrote:
>>>> Hi
>>>>
>>>> You disable JMX in Camel as documented here
>>>> http://camel.apache.org/camel-jmx.html
>>>>
>>>> eg by adding this tag inside <camelContext>
>>>>  <jmxAgent id="agent" disabled="true"/>
>>>>
>>>>
>>>>
>>>> On Tue, Mar 23, 2010 at 7:27 AM, Norman Maurer
>>>> <norman.maurer@googlemail.com> wrote:
>>>>> Hi Claus,
>>>>>
>>>>> yes we use pooled connections. Here is the config:
>>>>>
>>>>> http://svn.apache.org/viewvc/james/server/trunk/spring-deployment/src/main/config/james/activemq.xml?view=markup
>>>>> http://svn.apache.org/viewvc/james/server/trunk/spring-deployment/src/main/config/james/spring-beans.xml?view=markup
>>>>>
>>>>> Thx again for all your help..
>>>>>
>>>>> Bye,
>>>>> Norman
>>>>>
>>>>>
>>>>> 2010/3/22 Claus Ibsen <claus.ibsen@gmail.com>:
>>>>>> On Mon, Mar 22, 2010 at 7:47 PM, Norman Maurer <norman@apache.org>
wrote:
>>>>>>> Same problem again,
>>>>>>>
>>>>>>> any other idea?
>>>>>>>
>>>>>>
>>>>>> What is your JMS configuration? Are you using pooled connection factories
etc?
>>>>>>
>>>>>>
>>>>>>> Bye
>>>>>>> Norman
>>>>>>>
>>>>>>> 2010/3/22, Norman Maurer <norman.maurer@googlemail.com>:
>>>>>>>> Thx for the suggestion. I just disabled it.. Now I will have
to wait
>>>>>>>> to see what happens ..
>>>>>>>>
>>>>>>>> Bye,
>>>>>>>> Norman
>>>>>>>>
>>>>>>>>
>>>>>>>> 2010/3/22 Claus Ibsen <claus.ibsen@gmail.com>:
>>>>>>>>> On Sun, Mar 21, 2010 at 8:54 PM, Norman Maurer <norman@apache.org>
wrote:
>>>>>>>>>> After committing the changes and re-deploy the app
, we still see the
>>>>>>>>>> OOM Exception.
>>>>>>>>>>
>>>>>>>>>> Seems like it's to much for the Java VM to create
a now Consumer evert
>>>>>>>>>> 30 seconds. Any other suggestions?
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Can you disable JMX which is the one I would assume could
be the cause
>>>>>>>>> of the issue.
>>>>>>>>> http://camel.apache.org/camel-jmx.html
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>> Thx
>>>>>>>>>> Norman
>>>>>>>>>>
>>>>>>>>>> 2010/3/19, Norman Maurer <norman.maurer@googlemail.com>:
>>>>>>>>>>> Ah right..
>>>>>>>>>>>
>>>>>>>>>>> Thx for the pointer :)
>>>>>>>>>>>
>>>>>>>>>>> Bye,
>>>>>>>>>>> Norman
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> 2010/3/19 Claus Ibsen <claus.ibsen@gmail.com>:
>>>>>>>>>>>> On Fri, Mar 19, 2010 at 8:55 AM, Norman Maurer
>>>>>>>>>>>> <norman.maurer@googlemail.com> wrote:
>>>>>>>>>>>>> Hi Claus,
>>>>>>>>>>>>>
>>>>>>>>>>>>> did I get it right ?
>>>>>>>>>>>>>
>>>>>>>>>>>>> http://svn.apache.org/viewvc/james/server/trunk/spoolmanager/src/main/java/org/apache/james/transport/camel/JMSSelectorPollingConsumer.java?view=markup
>>>>>>>>>>>>>
>>>>>>>>>>>>> Would be nice if you could have a look
...
>>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> Yes it looks perfect. The only issue would
be if an exception was
>>>>>>>>>>>> thrown, eg consider using try .. finally
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>> Thx,
>>>>>>>>>>>>> Norman
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> 2010/3/18 Norman Maurer <norman.maurer@googlemail.com>:
>>>>>>>>>>>>>> Jira Ticket created:
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> https://issues.apache.org/activemq/browse/CAMEL-2558
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Thx,
>>>>>>>>>>>>>> Norman
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> 2010/3/18 Claus Ibsen <claus.ibsen@gmail.com>:
>>>>>>>>>>>>>>> On Thu, Mar 18, 2010 at 12:58
PM, Norman Maurer <norman@apache.org>
>>>>>>>>>>>>>>> wrote:
>>>>>>>>>>>>>>>> Hi all,
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> I'm using the ConsumerTemplate
to consume messages from a ActiceMQ
>>>>>>>>>>>>>>>> queue (using a selector for
filtering). Everything seems to work
>>>>>>>>>>>>>>>> without a problem but after
some days I get an OOM Exception. (To
>>>>>>>>>>>>>>>> be
>>>>>>>>>>>>>>>> hornest the queue is empty
all the time). When I remove the
>>>>>>>>>>>>>>>> ConsumerTemplate stuff I
don't see the problems. So I suspect
>>>>>>>>>>>>>>>> there
>>>>>>>>>>>>>>>> is
>>>>>>>>>>>>>>>> something leakin..
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> Any idea howto track down
this ?
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> My code is here:
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> http://svn.apache.org/viewvc/james/server/trunk/spoolmanager/src/main/java/org/apache/james/transport/camel/JMSSelectorPollingConsumer.java?view=markup
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> I'm usin camel 2.3 SNAPSHOT..
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Your consumer endpoint URI will
be unique on each call since you
>>>>>>>>>>>>>>> use
>>>>>>>>>>>>>>> System currentTimeMillis.
>>>>>>>>>>>>>>> And hence the internal consumer
cache is without any effect and a
>>>>>>>>>>>>>>> new
>>>>>>>>>>>>>>> endpoint is created to consume
from the JMS Broker.
>>>>>>>>>>>>>>> The ConsumerTemplate has an internal
LRUCache of 1000 elements. I
>>>>>>>>>>>>>>> guess even with that to prevent
high memory consumption your JVM hit
>>>>>>>>>>>>>>> a
>>>>>>>>>>>>>>> limit before.
>>>>>>>>>>>>>>> It would be more ideal if the
endpoint could be reused and the
>>>>>>>>>>>>>>> JMSSelector was dynamic.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> I recon we need to expose easy
cache size on the Consumer/Producer
>>>>>>>>>>>>>>> Templates so you can set a lower
size in your case.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Could you create a JIRA ticket
on this?
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> A workaround currently is to
not use the consumer template but
>>>>>>>>>>>>>>> creating the consumer manually
and then doing the stop afterwards
>>>>>>>>>>>>>>> to
>>>>>>>>>>>>>>> free resources.
>>>>>>>>>>>>>>> Another workaround is to stop/start
the consumer template once in a
>>>>>>>>>>>>>>> while to free the cache.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> But since you are on 2.3-SNAPSHOT
you may want to wait for the fix
>>>>>>>>>>>>>>> and
>>>>>>>>>>>>>>> try it out.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> Thx,
>>>>>>>>>>>>>>>> Norman
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> --
>>>>>>>>>>>>>>> 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
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> --
>>>>>>>>>>>> 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
>>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> --
>>>>>>>>> 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
>>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> 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
>>>>>>
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> 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
>>>>
>>>
>>>
>>>
>>> --
>>> 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
>>>
>>
>



-- 
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

Mime
View raw message