[
https://issues.apache.org/activemq/browse/CAMEL-1930?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Claus Ibsen updated CAMEL-1930:
-------------------------------
Attachment: camel_1930.patch
That was a fast reply. So I am attaching my current patch. It does still need
more extensive unit testing but it does seem at first glance to work with
concurrent evaluation.
Yet again if you or other have more advanced xml documentations and xpath
expressions to use for testing that would be appreciated. As the one in this
test is simple and thus fast for the computer to evaluate at runtime.
> 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
>
>
> 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.