Hi,
I need some help. I spent few days googling and debugging but was unable to
find solution for my problem. Please clarify me it what i found is the
camel's desired behavior (Camel 1.3 deployed in IONA Fuse service mix) or a
bug. If this is not a bug , i would be grateful for any hints.

I have the following configuration:

private static final String PARAllEL_PROCESSING_POINT = "direct:mainflow";


        from("jetty:http://localhost:8999/my).convertBodyTo(String.class)
                        .to("log:incomingRequest")
                        .to(PARALLEL_PROCESSING_POINT)
                        .to("log:after mainflow");
                                        
                
                from(PARALLEL_PROCESSING_POINT)
                .multicast(parallelFlowAggregationStrategy,true)
                .to(“log: first”,”log: second”);

Jetty is my entry point to which I send xml requests. I'm using jmeter to
send requests in multiple threads at once. When I set multicast to fork into
subflows I keep getting :


ERROR - DeadLetterChannel              - Failed delivery for exchangeId:
ID-S205410J4462164/3125-1216299226744/0-0. On delivery attempt: 0 caught:
java.util.concurrent.RejectedExecutionException
java.util.concurrent.RejectedExecutionException
        at
org.apache.camel.processor.MulticastProcessor$2.rejectedExecution(MulticastProcessor.java:231)
        at
java.util.concurrent.ThreadPoolExecutor.reject(ThreadPoolExecutor.java:767)
        at
java.util.concurrent.ThreadPoolExecutor.execute(ThreadPoolExecutor.java:658)
        at
org.apache.camel.processor.MulticastProcessor.process(MulticastProcessor.java:164)
        at
org.apache.camel.impl.converter.AsyncProcessorTypeConverter$ProcessorToAsynProcessorBridge.process(AsyncProcessorTypeConverter.java:44)
        at
org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:146)
        at
org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:90)
        at
org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:53)
        at
org.apache.camel.component.direct.DirectProducer.process(DirectProducer.java:67)
        at 
org.apache.camel.processor.SendProcessor.process(SendProcessor.java:73)
        at
org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:146)
        at
org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:90)
        at org.apache.camel.processor.Pipeline.process(Pipeline.java:101)
        at org.apache.camel.processor.Pipeline.process(Pipeline.java:85)
        at
org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:40)
        at
org.apache.camel.component.jetty.CamelContinuationServlet.service(CamelContinuationServlet.java:66)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
        at 
org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487)
        at 
org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:362)
        at 
org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:726)
        at 
org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139)
        at org.mortbay.jetty.Server.handle(Server.java:324)
        at 
org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:505)
        at
org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:842)
        at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:648)
        at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211)
        at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:380)
        at
org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:395)
        at
org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:450)


The more threads I  start the more often exception occurs. It works hen I
disable forking for multicast.  I tried to resolve this problem by setting
threads(..) just after jetty , but this didn't work because there were messy
responses back on jetty(another issue?? ) . This is just an example. The
real life application's flow is much more complicated and for performance
reasons i would like to use parallel processing wherever possible.

Any suggestions?

Kind regards.
Artur 


-- 
View this message in context: 
http://www.nabble.com/camel-jetty-multithreading-in-multicast-tp18571306s22882p18571306.html
Sent from the Camel - Users mailing list archive at Nabble.com.

Reply via email to