Pierre, this appears to be a bug. In the scenario you've described the uima as aggregate client should detect a lost connection (which it does) and create a new one on a subsequent process CAS request destined to the remote delegate. I will attempt to re-create your scenario and see if this is in fact a bug.
Thanks, JC On Tue, Mar 22, 2011 at 7:11 AM, Pierre Pujalon <ppuja...@yahoo.fr> wrote: > Hi, > I'm currently using UIMA-AS 2.3.1rc5 and I am having issues with > asynchronous delegated .. > > I have a chain of several annotators. One of them is an asynchronous > delegate as it is very resource consuming. > So I have one UIMA service with a simpleChainDescriptor and several UIMA > services with myDelegateAnnotatorDescriptor. > > When the activeMQ broker fails and restart, all my UIMA services resfresh > succesfully their JMS connection. But it appears that the service holding > the processing chain (simpleChainDescriptor) itself does not refresh the > JMS connection to the delegate JMS queue. > When a new CAS is processed, I have the following exception in the console > !!!! and the processing of the cas stop silently and passes to the next cas. > If I restart the service holding the chain, everything go back to normal. > > Is this a bug or am I missing something? > > Thanks, > Pierre > > > ATTENTION: Uima AS Service:simpleChainDescriptor Listener Established > Connection to Broker: tcp://brokerurl:61616 > 22 mars 2011 11:11:00 > org.apache.uima.adapter.jms.activemq.UimaDefaultMessageListenerContainer > handleListenerSetupFailure > ATTENTION: Uima AS Service:simpleChainDescriptor Listener Established > Connection to Broker: tcp://brokerurl:61616 > 22 mars 2011 11:11:00 org.apache.uima.adapter.jms.activemq.JmsOutputChannel > invalidateConnectionAndEndpoints > INFO: Controller simpleChainDescriptor Invalidating JMS Connection To > Broker tcp://brokerurl:61616 and Closing Sessions To Delegates > 22 mars 2011 11:11:01 > org.apache.uima.adapter.jms.activemq.JmsEndpointConnection_impl send > ATTENTION: Service: simpleChainDescriptor Runtime Exception > 22 mars 2011 11:11:01 > org.apache.uima.adapter.jms.activemq.JmsEndpointConnection_impl send > ATTENTION: > org.apache.uima.aae.error.DelegateConnectionLostException: > Controller:simpleChainDescriptor Lost Connection to > Delegate:myDelegateAnnotatorDescriptor > at > org.apache.uima.adapter.jms.activemq.JmsEndpointConnection_impl.send(JmsEndpointConnection_impl.java:536) > at > org.apache.uima.adapter.jms.activemq.JmsEndpointConnection_impl.send(JmsEndpointConnection_impl.java:507) > at > org.apache.uima.adapter.jms.activemq.JmsOutputChannel.dispatch(JmsOutputChannel.java:1366) > at > org.apache.uima.adapter.jms.activemq.JmsOutputChannel.sendCasToRemoteEndpoint(JmsOutputChannel.java:1527) > at > org.apache.uima.adapter.jms.activemq.JmsOutputChannel.serializeCasAndSend(JmsOutputChannel.java:658) > at > org.apache.uima.adapter.jms.activemq.JmsOutputChannel.sendRequest(JmsOutputChannel.java:610) > at > org.apache.uima.aae.controller.AggregateAnalysisEngineController_impl.dispatch(AggregateAnalysisEngineController_impl.java:2381) > at > org.apache.uima.aae.controller.AggregateAnalysisEngineController_impl.dispatchProcessRequest(AggregateAnalysisEngineController_impl.java:2421) > at > org.apache.uima.aae.controller.AggregateAnalysisEngineController_impl.simpleStep(AggregateAnalysisEngineController_impl.java:1294) > at > org.apache.uima.aae.controller.AggregateAnalysisEngineController_impl.executeFlowStep(AggregateAnalysisEngineController_impl.java:2302) > at > org.apache.uima.aae.controller.AggregateAnalysisEngineController_impl.process(AggregateAnalysisEngineController_impl.java:1229) > at > org.apache.uima.aae.handler.HandlerBase.invokeProcess(HandlerBase.java:118) > at > org.apache.uima.aae.handler.input.ProcessResponseHandler.cancelTimerAndProcess(ProcessResponseHandler.java:108) > at > org.apache.uima.aae.handler.input.ProcessResponseHandler.handleProcessResponseWithCASReference(ProcessResponseHandler.java:387) > at > org.apache.uima.aae.handler.input.ProcessResponseHandler.handle(ProcessResponseHandler.java:656) > at > org.apache.uima.aae.handler.HandlerBase.delegate(HandlerBase.java:149) > at > org.apache.uima.aae.handler.input.ProcessRequestHandler_impl.handle(ProcessRequestHandler_impl.java:973) > at > org.apache.uima.aae.spi.transport.vm.UimaVmMessageListener.onMessage(UimaVmMessageListener.java:107) > at > org.apache.uima.aae.spi.transport.vm.UimaVmMessageDispatcher$1.run(UimaVmMessageDispatcher.java:70) > at > java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) > at java.lang.Thread.run(Thread.java:619) > 22 mars 2011 11:11:01 > org.apache.uima.aae.error.handler.ProcessCasErrorHandler handleError > ATTENTION: Service: simpleChainDescriptor Runtime Exception > 22 mars 2011 11:11:01 > org.apache.uima.aae.error.handler.ProcessCasErrorHandler handleError > ATTENTION: > org.apache.uima.aae.error.DelegateConnectionLostException: > Controller:simpleChainDescriptor Lost Connection to > Delegate:myDelegateAnnotatorDescriptor > at > org.apache.uima.adapter.jms.activemq.JmsEndpointConnection_impl.send(JmsEndpointConnection_impl.java:536) > at > org.apache.uima.adapter.jms.activemq.JmsEndpointConnection_impl.send(JmsEndpointConnection_impl.java:507) > at > org.apache.uima.adapter.jms.activemq.JmsOutputChannel.dispatch(JmsOutputChannel.java:1366) > at > org.apache.uima.adapter.jms.activemq.JmsOutputChannel.sendCasToRemoteEndpoint(JmsOutputChannel.java:1527) > at > org.apache.uima.adapter.jms.activemq.JmsOutputChannel.serializeCasAndSend(JmsOutputChannel.java:658) > at > org.apache.uima.adapter.jms.activemq.JmsOutputChannel.sendRequest(JmsOutputChannel.java:610) > at > org.apache.uima.aae.controller.AggregateAnalysisEngineController_impl.dispatch(AggregateAnalysisEngineController_impl.java:2381) > at > org.apache.uima.aae.controller.AggregateAnalysisEngineController_impl.dispatchProcessRequest(AggregateAnalysisEngineController_impl.java:2421) > at > org.apache.uima.aae.controller.AggregateAnalysisEngineController_impl.simpleStep(AggregateAnalysisEngineController_impl.java:1294) > at > org.apache.uima.aae.controller.AggregateAnalysisEngineController_impl.executeFlowStep(AggregateAnalysisEngineController_impl.java:2302) > at > org.apache.uima.aae.controller.AggregateAnalysisEngineController_impl.process(AggregateAnalysisEngineController_impl.java:1229) > at > org.apache.uima.aae.handler.HandlerBase.invokeProcess(HandlerBase.java:118) > at > org.apache.uima.aae.handler.input.ProcessResponseHandler.cancelTimerAndProcess(ProcessResponseHandler.java:108) > at > org.apache.uima.aae.handler.input.ProcessResponseHandler.handleProcessResponseWithCASReference(ProcessResponseHandler.java:387) > at > org.apache.uima.aae.handler.input.ProcessResponseHandler.handle(ProcessResponseHandler.java:656) > at > org.apache.uima.aae.handler.HandlerBase.delegate(HandlerBase.java:149) > at > org.apache.uima.aae.handler.input.ProcessRequestHandler_impl.handle(ProcessRequestHandler_impl.java:973) > at > org.apache.uima.aae.spi.transport.vm.UimaVmMessageListener.onMessage(UimaVmMessageListener.java:107) > at > org.apache.uima.aae.spi.transport.vm.UimaVmMessageDispatcher$1.run(UimaVmMessageDispatcher.java:70) > at > java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) > at java.lang.Thread.run(Thread.java:619) > > >