[ 
https://issues.apache.org/jira/browse/UIMA-2251?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13129705#comment-13129705
 ] 

Meghana Marathe commented on UIMA-2251:
---------------------------------------

Hi Jerry,

I don't think i've configured disabling after N errors/timeouts. This is what 
my aggregate deployment descriptor looks like:

<?xml version="1.0" encoding="UTF-8"?>
<analysisEngineDeploymentDescription
        xmlns="http://uima.apache.org/resourceSpecifier";>
        <name>AsyncAggregate</name>

        <deployment protocol="jms" provider="activemq">
                <casPool numberOfCASes="2" />
                <service>
                        <inputQueue endpoint="q_async_ae" 
brokerURL="tcp://{MASTER}:61616" />
                        <topDescriptor>
                                <import 
name="analysis_engine.aggregate.AnalysisAggregator" />
                        </topDescriptor>                        
                        <analysisEngine key="AnalysisAggregator" async="true">
                                <delegates>
                                <remoteAnalysisEngine key="OntoAnnotator">
                                                <inputQueue 
endpoint="OntoAnnotatorQueue" brokerURL="tcp://{MASTER}:61616"/>
                                                <serializer method="xmi"/>
                                                
<asyncAggregateErrorConfiguration>
                                                        <processCasErrors 
timeout="500000" continueOnRetryFailure="true" />
                                                
</asyncAggregateErrorConfiguration>
                                </remoteAnalysisEngine>
                                </delegates>
                        </analysisEngine>
                </service>
        </deployment>
</analysisEngineDeploymentDescription>

Please let me know whether there's any other default/etc that enables disabling 
on N errors/timeouts.
                
> UIMA AS aggregate disables broker connection 
> ---------------------------------------------
>
>                 Key: UIMA-2251
>                 URL: https://issues.apache.org/jira/browse/UIMA-2251
>             Project: UIMA
>          Issue Type: Bug
>          Components: Async Scaleout
>            Reporter: Jerry Cwiklik
>             Fix For: 2.4.0AS
>
>
> One of the  users reported a problem which seems like a bug in the UIMA AS 
> code which detects status of a   broker connection. The user provided 
> description follows:
> I have an aggregate AE with a remote primitive (OntoAnnotator). Both have
> their queues at the same broker. Clients send requests to the aggregate
> using the sendCAS() method.
> This was running fine for about 5-6 hours, but then the aggregate logged an
> error:
> 11/10/04 02:00:12 INFO cpe.DynamicFlowController$DynamicFlow: Next Executing
> Annotator :: OntoAnnotator
> 11/10/04 02:00:12 INFO activemq.JmsOutputChannel: Controller
> AnalysisAggregator Invalidating JMS Connection To Broker
> tcp://broker_ip:61616 and Closing Sessions To Delegates
> It had received 4-5 timeouts from the remote delegate over time, but at
> least a couple of hours before the above log. Both the broker and the remote
> delegate were still running and had not crashed.
> The aggregate continued processing requests after that -- the CASes are
> processed by all collocated primitives but not the remote one. Each CAS
> process request gets an exception:
> 11/10/04 02:00:12 WARN
> activemq.JmsEndpointConnection_impl:
> org.apache.uima.aae.error.DelegateConnectionLostException:
> Controller:AnalysisAggregator Lost Connection to Delegate:OntoAnnotator
>  at
> org.apache.uima.adapter.jms.activemq.JmsEndpointConnection_impl.send(JmsEndpointConnection_impl.java:547)
> at
> org.apache.uima.adapter.jms.activemq.JmsEndpointConnection_impl.send(JmsEndpointConnection_impl.java:509)
>  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:2395)
> at
> org.apache.uima.aae.controller.AggregateAnalysisEngineController_impl.dispatchProcessRequest(AggregateAnalysisEngineController_impl.java:2435)
>  at
> org.apache.uima.aae.controller.AggregateAnalysisEngineController_impl.simpleStep(AggregateAnalysisEngineController_impl.java:1295)
> at
> org.apache.uima.aae.controller.AggregateAnalysisEngineController_impl.executeFlowStep(AggregateAnalysisEngineController_impl.java:2316)
>  at
> org.apache.uima.aae.controller.AggregateAnalysisEngineController_impl.process(AggregateAnalysisEngineController_impl.java:1230)
> at
> org.apache.uima.aae.handler.HandlerBase.invokeProcess(HandlerBase.java:118)
>  at
> org.apache.uima.aae.handler.input.ProcessResponseHandler.cancelTimerAndProcess(ProcessResponseHandler.java:108)
> When I tried stopping the aggregate, the logs said the following though
> there was no CAS request in process:
> 11/10/04 10:18:18 WARN service.UIMA_Service: Uima AS Service
> AnalysisAggregator Caught Kill Signal - Initiating Quiesce and Stop
> 11/10/04 10:18:18 INFO controller.BaseAnalysisEngineController: Stopping
> Controller: AnalysisAggregator
> 11/10/04 10:18:18 INFO activemq.JmsInputChannel: Stopping Service JMS
> Transport. Service: q_async_ae
> 11/10/04 10:18:18 INFO activemq.JmsInputChannel: Controller:
> AnalysisAggregator Stopped Listener on Endpoint: queue://q_async_ae
> Selector:  Selector:Command=2000 OR Command=2002.
> 11/10/04 10:18:18 INFO activemq.JmsInputChannel: Stopping Service JMS
> Transport. Service: q_async_ae
> 11/10/04 10:18:18 INFO activemq.JmsInputChannel: Controller:
> AnalysisAggregator Stopped Listener on Endpoint: queue://q_async_ae
> Selector:  Selector:Command=2001.
> 11/10/04 10:18:18 INFO controller.BaseAnalysisEngineController: Controller:
> AnalysisAggregator Registering onEmpty Callback With InProcessCache.
> 11/10/04 10:18:18 INFO controller.BaseAnalysisEngineController: Controller:
> AnalysisAggregator Awaiting onEmpty Callback From InProcessCache
> After restarting just the aggregate, it connected to the remote AE just
> fine. So i'm wondering why the aggregate decided to stop communicating with
> it earlier?
> I've seen a previous thread with a similar error (
> http://thread.gmane.org/gmane.comp.apache.uima.general/3351/focus=3388), but
> there the broker was wilfully taken down, whereas I did no such thing.
> Thanks, and sorry for the barrage of info.
> Meghana

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to