[
https://issues.apache.org/activemq/browse/CAMEL-1930?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Claus Ibsen resolved CAMEL-1930.
--------------------------------
Resolution: Fixed
Thanks Fabrice for testing it and providing screenshots (nice to see the before
and after situation).
I have applied the patch to trunk: 824627.
> Synchronized access to XPathExpression resulting in contention for multiple
> consumers
> -------------------------------------------------------------------------------------
>
> Key: CAMEL-1930
> URL: https://issues.apache.org/activemq/browse/CAMEL-1930
> Project: Apache Camel
> Issue Type: Bug
> Components: camel-core
> Affects Versions: 2.0-M3
> Environment: Java 1.6, Spring 2.5.6
> Reporter: Fabrice Delaporte
> Assignee: Claus Ibsen
> Fix For: 2.1.0
>
> Attachments: camel_1930.patch, with-contention.jpg,
> without-contention.jpg, XPathRouteConcurrentBigTest.java
>
>
> Hi,
> I'm using Camel to do some JMS message routing. Messages are XML so xpath is
> a natural choice.
> However when using a choice with an xpath expression, the XPathBuilder
> creates one XPathExpression object. According to the specification, these
> objects are not thread safe so synchronizing looks natural. But then, using
> multiple jms consumers is totally useless since no concurrent evaluations can
> be made.
> XPathExpression objects would rather need to be stored in a ThreadLocal to
> avoid synchronization and contention.
> Cheers,
> Fabrice
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.