[ https://issues.apache.org/activemq/browse/CAMEL-1930?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Fabrice Delaporte updated CAMEL-1930: ------------------------------------- Attachment: with-contention.jpg This capture shows ten consumers competing to evaluate an XPath expression > 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 > > > 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.