-
Documentation
-
Resolution: Done
-
Major
-
2.7.1-fuse-00-27
-
None
-
None
-
FuseESB 4.4.0-fuse-00-43
A customer has asked whether he could override the default introduced by CAMEL-3828. That change caused org.apache.camel.component.jms.JmsComponent to set the default JMS resource caching policy to CACHE_NONE when transacted property was set to "true". The customer noticed that such setting degraded performance of their application, and asked whether they could override the new default. He complained that we did not provide clear documentation of different caching policies and their implications for transacted JMS components, and noted that these implications could differ depending on a component's reliance on external transaction manager.
Here is a quote from Claus Ibsen who agrees that we may have to document this better:
Hi
I would frankly say it may be okay to set it to CACHE_CONSUMER because
that has been the default value for years in Camel and people haven't
had any issues in general. We used to have som warning at the Apache
JMS wiki page, if you was using JBoss, WebSphere with XA, then you
would have to set it to CACHE_NONE etc.
I am actually eager to hear a bit more from Guillaume in what
environment he found the problem? Was it when using Fuse ESB and was
he using XA or not? etc.
We should possible look into this a bit more, and maybe add some
documentation to our transaction guide, if it is possible to use
CACHE_CONSUMER if you are just using ActiveMQ and not XA etc. And some
notes at the Apache JMS page as well.
Fell free to create a JIRA ticket in the Fuse MR tracker.
–
Claus Ibsen
-----------------
FuseSource