Hi,

I deployed 2 bundles in KARAF2.3.3 cluster.
One is client bundle and the other is a service  bundle. Thy are deployed in
different cluster nodes.

Client bundle has a camel route. it  just receives message from JMS server
and pass the message to service bundle by invoking remote OSGI service in
the service bundle. Route as below
                <route id="passMessage" startupOrder="10">
                        <from uri="tibicoJMSTopic" />
                        <bean ref="processorService" method="process(${body})"/>
                </route>

And service bundle have an osgi service and a camel route.
the osgi service  just  save the message which is passed from client bundle
to a *blockingQueue*. The camel route just gets message from the
*blockingqueue *and process the message. The camel route as below.

                <route id="processMessage" startupOrder="10">
                        <from 
uri="timer://myTimer?fixedRate=true&amp;period=2000"/>
                               <to id="ToMsgBlockingQueueProcessor"
uri="msgBlockingQueueProcessor"/>
                </route>

The java code segment for getting message from QUEUE in the
msgBlockingQueueProcessor 
BlockingQueue<TibjmsTextMessage> queue = new
LinkedBlockingQueue<TibjmsTextMessage>();

        public TibjmsTextMessage getMsgFromQueue() throws InterruptedException{
                
                *return queue.take();*          //return queue.poll(20, 
TimeUnit.SECONDS);
        }

But when I just stop the service bundle(notification: in the same  time the
client bundle  is activate and still will try to pass message to service
bundle by OSGI service). then  restart it, I can see the below error log.
And I found the first message passed to service bundle after restart will
not be pocessed.

2014-02-20 21:21:41,950 | INFO  | xtenderThread-36 | OsgiServiceFactoryBean     
     
| r.support.OsgiServiceFactoryBean  301 | 83 - org.springframework.osgi.core
- 1.2.1 | Publishing service under classes
[{com.citi.gravity.vantageocean.service.TibcoEMSProcessorService}]
2014-02-20 21:21:41,969 | ERROR |  timer://myTimer | MsgQueueProcessor          
     
| cean.processor.MsgQueueProcessor   38 | 243 -
Gravity-VantageOceanPublisher-Service - 1.0.0.A0 | set message to body
2014-02-20 21:21:42,171 | INFO  |  timer://myTimer | Activator                  
     
| BundleTypeConverterLoader$Loader  353 | 63 - org.apache.camel.camel-core -
2.10.4 | Found 0 @Converter classes to load
2014-02-20 21:21:42,174 | INFO  |  timer://myTimer | DefaultTypeConverter       
     
| verter.BaseTypeConverterRegistry  522 | 63 - org.apache.camel.camel-core -
2.10.4 | TypeConverterRegistry utilization[attempts=0, hits=0, misses=0,
failures=0] mappings[total=172, misses=0]
2014-02-20 21:21:42,175 | WARN  |  timer://myTimer | TimerConsumer              
     
| rg.apache.camel.util.CamelLogger  224 | 63 - org.apache.camel.camel-core -
2.10.4 | Error processing exchange. Exchange[Message: TextMessage={ Header={
JMSMessageID={ID:cfvtgbroker_steesb_ny_dev.50195300D214120824:1777}
JMSDestination={Topic[credit.vantage.IOI.topic]} JMSReplyTo={null}
JMSDeliveryMode={PERSISTENT} JMSRedelivered={false} JMSCorrelationID={null}
JMSType={null} JMSTimestamp={Thu Feb 20 21:21:00 EST 2014} JMSExpiration={0}
JMSPriority={4} } Properties={ Action={String:Add} AddUser={String:YM39464}
IOI_TYPE={String:SALES} SalesId={String:YM39464} }
Text={<IOIWrapper><ioi><addTS>2014-02-20T21:21:00-05:00</addTS>><id>9901...
[Body clipped after 1000 chars, total length is 6023]]. Caused by:
[java.util.concurrent.RejectedExecutionException - null]
java.util.concurrent.RejectedExecutionException
        at
org.apache.camel.processor.interceptor.DefaultChannel.continueProcessing(DefaultChannel.java:329)[63:org.apache.camel.camel-core:2.10.4]
        at
org.apache.camel.processor.interceptor.DefaultChannel.process(DefaultChannel.java:300)[63:org.apache.camel.camel-core:2.10.4]
        at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)[63:org.apache.camel.camel-core:2.10.4]
        at
org.apache.camel.processor.Pipeline.process(Pipeline.java:117)[63:org.apache.camel.camel-core:2.10.4]
        at
org.apache.camel.processor.Pipeline.process(Pipeline.java:80)[63:org.apache.camel.camel-core:2.10.4]
        at
org.apache.camel.processor.RouteContextProcessor.processNext(RouteContextProcessor.java:46)[63:org.apache.camel.camel-core:2.10.4]
        at
org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)[63:org.apache.camel.camel-core:2.10.4]
        at
org.apache.camel.processor.UnitOfWorkProcessor.processAsync(UnitOfWorkProcessor.java:150)[63:org.apache.camel.camel-core:2.10.4]
        at
org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:117)[63:org.apache.camel.camel-core:2.10.4]
        at
org.apache.camel.processor.RouteInflightRepositoryProcessor.processNext(RouteInflightRepositoryProcessor.java:48)[63:org.apache.camel.camel-core:2.10.4]
        at
org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)[63:org.apache.camel.camel-core:2.10.4]
        at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)[63:org.apache.camel.camel-core:2.10.4]
        at
org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)[63:org.apache.camel.camel-core:2.10.4]
        at
org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)[63:org.apache.camel.camel-core:2.10.4]
        at
org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:72)[63:org.apache.camel.camel-core:2.10.4]
        at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)[63:org.apache.camel.camel-core:2.10.4]
        at
org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:86)[63:org.apache.camel.camel-core:2.10.4]
        at
org.apache.camel.component.timer.TimerConsumer.sendTimerExchange(TimerConsumer.java:135)[63:org.apache.camel.camel-core:2.10.4]
        at
org.apache.camel.component.timer.TimerConsumer$1.run(TimerConsumer.java:63)[63:org.apache.camel.camel-core:2.10.4]
        at java.util.TimerThread.mainLoop(Timer.java:512)[:1.6.0_31]
        at java.util.TimerThread.run(Timer.java:462)[:1.6.0_31]

*
Do you have any suggestion? Thank you!*



--
View this message in context: 
http://camel.465427.n5.nabble.com/RejectedExecutionException-issue-in-camel-2-10-4-tp5747721.html
Sent from the Camel - Users mailing list archive at Nabble.com.

Reply via email to