One Star

Mediation cTalendJob concurrency issue

Dear support,
We are facing concurrency problems with cTalendJob component. We use TOS ESB 5.6.2.
We have flow cJMS - - > cTalendJob. The Talend job is very straightforward, the problem happens even with such an easy job: tRouteInput - - > tMap - - > tRouteOutput.
Everything works smoothly when we have concurrentConsumers =1 on AMQ JMS endpoint. However, when we increase it to 2 or even more, we are getting null pointer exception for many but not all messages. We use transactional connection factory, so re-try is performed, but it does not seem to have any impact on the error itself.
Similarly, we have another route cFile  - - > cConvertBodyTo(string)  - - > cSplitter - - (split) - > cTalendJob. Everything goes well until we set parallel processing on the splitter. Then we observe the same behavior.
The behavior is similar in Studio as well as in Karaf.
The exception is following:

java.lang.NullPointerException
 at org.talend.camel.TalendProducer.invokeTalendJob(TalendProducer.java:115)
 at org.talend.camel.TalendProducer.process(TalendProducer.java:65)
 at org.apache.camel.util.AsyncProcessorConverterHelper$ProcessorToAsyncProcessorBridge.process(AsyncProcessorConverterHelper.java:61)
 at org.apache.camel.processor.SendProcessor.process(SendProcessor.java:113)
 at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:72)
 at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:91)
 at routines.system.CamelStat$1$1.process(CamelStat.java:56)
 at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:91)
 at org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:416)
 at org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:191)
 at org.apache.camel.processor.Pipeline.process(Pipeline.java:118)
 at org.apache.camel.processor.Pipeline.process(Pipeline.java:80)
 at org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:416)
 at org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:191)
 at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:105)
 at org.apache.camel.processor.MulticastProcessor.doProcessParallel(MulticastProcessor.java:708)
 at org.apache.camel.processor.MulticastProcessor.access$200(MulticastProcessor.java:82)
 at org.apache.camel.processor.MulticastProcessor$1.call(MulticastProcessor.java:292)
 at org.apache.camel.processor.MulticastProcessor$1.call(MulticastProcessor.java:277)
 at java.util.concurrent.FutureTask.run(Unknown Source)
 at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
 at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
 at java.lang.Thread.run(Unknown Source)
Thanks for your help. Michal Bureš
7 REPLIES
One Star

Re: Mediation cTalendJob concurrency issue

One Star

Re: Mediation cTalendJob concurrency issue

Well done, guys, thanks!
Any chance to get this back to 5.6.2?
One Star

Re: Mediation cTalendJob concurrency issue

One Star

Re: Mediation cTalendJob concurrency issue

Hi, all! Could u tell me, how i can get this fix?
One Star

Re: Mediation cTalendJob concurrency issue

I don't know when next support build planned but you can build the project yourself - its pretty simple:
https://github.com/Talend/tesb-rt-se/tree/dev-5.6/camel-talendjob
mvn clean install
One Star

Re: Mediation cTalendJob concurrency issue

Thanks a lot for fast reply!!! I'll try.
Six Stars

Re: Mediation cTalendJob concurrency issue

To let you know that it does the work for me, no more concurrency issues on cTalendJob under 5.6.2
Smiley Happy