You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@uima.apache.org by ea...@apache.org on 2008/09/22 18:42:38 UTC
svn commit: r697893 - in
/incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src:
main/java/org/apache/uima/adapter/jms/activemq/
main/java/org/apache/uima/adapter/jms/client/
test/java/org/apache/uima/ee/test/ test/java/org/apache/uima/ee/test/uti...
Author: eae
Date: Mon Sep 22 09:42:38 2008
New Revision: 697893
URL: http://svn.apache.org/viewvc?rev=697893&view=rev
Log:
uima-1140 Commit Jerry's three UIMA-1140 patches
Added:
incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src/test/resources/deployment/Deploy_ComplexAggregateWithInnerAggregateCM.xml
incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src/test/resources/descriptors/analysis_engine/ComplexAggregateWithInnerAggregateCM.xml
Modified:
incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src/main/java/org/apache/uima/adapter/jms/activemq/JmsInputChannel.java
incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src/main/java/org/apache/uima/adapter/jms/activemq/JmsOutputChannel.java
incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src/main/java/org/apache/uima/adapter/jms/activemq/SpringContainerDeployer.java
incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src/main/java/org/apache/uima/adapter/jms/activemq/UimaEEAdminSpringContext.java
incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src/main/java/org/apache/uima/adapter/jms/client/BaseUIMAAsynchronousEngine_impl.java
incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src/test/java/org/apache/uima/ee/test/TestUimaASExtended.java
incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src/test/java/org/apache/uima/ee/test/utils/BaseTestSupport.java
incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src/test/resources/deployment/Deploy_AggregateAnnotatorWith1MillionDocs.xml
incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src/test/resources/deployment/Deploy_AggregateAnnotatorWithInternalCM1000Docs.xml
Modified: incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src/main/java/org/apache/uima/adapter/jms/activemq/JmsInputChannel.java
URL: http://svn.apache.org/viewvc/incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src/main/java/org/apache/uima/adapter/jms/activemq/JmsInputChannel.java?rev=697893&r1=697892&r2=697893&view=diff
==============================================================================
--- incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src/main/java/org/apache/uima/adapter/jms/activemq/JmsInputChannel.java (original)
+++ incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src/main/java/org/apache/uima/adapter/jms/activemq/JmsInputChannel.java Mon Sep 22 09:42:38 2008
@@ -628,7 +628,9 @@
getController().beginProcess(requestType);
}
-
+ UIMAFramework.getLogger(CLASS_NAME).logrb(Level.FINEST, CLASS_NAME.getName(),
+ "onMessage", JmsConstants.JMS_LOG_RESOURCE_BUNDLE, "UIMAJMS_new_msg_in__FINEST",
+ new Object[] { getController().getComponentName(), msgFrom, command, messageType, casRefId });
if ( handler != null )
{
handler.handle( messageContext );
@@ -636,7 +638,10 @@
}
else
{
- controller.getErrorHandlerChain().handle(new InvalidMessageException(), HandlerBase.populateErrorContext( messageContext ), controller);
+ if ( !isStaleMessage(aMessage))
+ {
+ controller.getErrorHandlerChain().handle(new InvalidMessageException(), HandlerBase.populateErrorContext( messageContext ), controller);
+ }
}
}
@@ -788,5 +793,8 @@
{
return stopped;
}
-
+ public int getConcurrentConsumerCount()
+ {
+ return messageListener.getConcurrentConsumers();
+ }
}
Modified: incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src/main/java/org/apache/uima/adapter/jms/activemq/JmsOutputChannel.java
URL: http://svn.apache.org/viewvc/incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src/main/java/org/apache/uima/adapter/jms/activemq/JmsOutputChannel.java?rev=697893&r1=697892&r2=697893&view=diff
==============================================================================
--- incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src/main/java/org/apache/uima/adapter/jms/activemq/JmsOutputChannel.java (original)
+++ incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src/main/java/org/apache/uima/adapter/jms/activemq/JmsOutputChannel.java Mon Sep 22 09:42:38 2008
@@ -493,7 +493,6 @@
{
serviceInfo.setReplyQueueName(replyQueueName);
serviceInfo.setServiceKey(delegateKey);
- System.out.println("Service:"+delegateKey+" Directed to Reply To:"+replyQueueName);
}
}
}
@@ -503,7 +502,6 @@
if (serviceInfo != null )
{
serviceInfo.setReplyQueueName(controllerInputEndpoint);
- System.out.println("Aggregate Service Reply Queue:"+getAnalysisEngineController().getComponentName()+" Reply To:"+controllerInputEndpoint);
}
}
}
@@ -677,7 +675,22 @@
UIMAFramework.getLogger(CLASS_NAME).logrb(Level.FINE, CLASS_NAME.getName(),
"sendReply", JmsConstants.JMS_LOG_RESOURCE_BUNDLE, "UIMAJMS_sending_reply_with_sequence__FINE",
new Object[] { anEndpoint.getEndpoint(), entry.getCasReferenceId(), entry.getCasSequence() });
- sendCasToCollocatedDelegate(false, entry.getInputCasReferenceId(), entry.getCasReferenceId(), anEndpoint, false, entry.getCasSequence());
+
+ if ( getAnalysisEngineController() instanceof AggregateAnalysisEngineController && getAnalysisEngineController().isCasMultiplier() )
+ {
+ if ( ((AggregateAnalysisEngineController)getAnalysisEngineController()).getMessageOrigin(entry.getInputCasReferenceId()) != null)
+ {
+ sendCasToCollocatedDelegate(false, entry.getInputCasReferenceId(), entry.getCasReferenceId(), anEndpoint, false, entry.getCasSequence());
+ }
+ else
+ {
+ sendCasToCollocatedDelegate(false, entry.getCasReferenceId(), null, anEndpoint, false, 0);
+ }
+ }
+ else
+ {
+ sendCasToCollocatedDelegate(false, entry.getInputCasReferenceId(), entry.getCasReferenceId(), anEndpoint, false, entry.getCasSequence());
+ }
}
}
catch( ServiceShutdownException e)
@@ -1153,7 +1166,7 @@
aMessage.setIntProperty(AsynchAEMessage.MessageType, AsynchAEMessage.Response);
aMessage.setIntProperty(AsynchAEMessage.Command, aCommand);
aMessage.setStringProperty(AsynchAEMessage.MessageFrom, serviceInputEndpoint);
-
+
if (anEndpoint.isRemote())
{
aMessage.setStringProperty(UIMAMessage.ServerURI, getServerURI());
Modified: incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src/main/java/org/apache/uima/adapter/jms/activemq/SpringContainerDeployer.java
URL: http://svn.apache.org/viewvc/incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src/main/java/org/apache/uima/adapter/jms/activemq/SpringContainerDeployer.java?rev=697893&r1=697892&r2=697893&view=diff
==============================================================================
--- incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src/main/java/org/apache/uima/adapter/jms/activemq/SpringContainerDeployer.java (original)
+++ incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src/main/java/org/apache/uima/adapter/jms/activemq/SpringContainerDeployer.java Mon Sep 22 09:42:38 2008
@@ -98,6 +98,25 @@
}
return factory;
}
+
+ private int getConcurrentConsumerCount( ApplicationContext ctx )
+ {
+ String[] listenerBeanIds = ctx.getBeanNamesForType(org.apache.uima.adapter.jms.activemq.UimaDefaultMessageListenerContainer.class);
+ String beanId = null;
+ int concurrentConsumerCount = -1;
+ for( int i=0; i < listenerBeanIds.length; i++)
+ {
+ UimaDefaultMessageListenerContainer lsnr = (UimaDefaultMessageListenerContainer)ctx.getBean(listenerBeanIds[i]);
+ if ( lsnr.getDestinationName().startsWith("asynAggr_retQ"))
+ {
+ return lsnr.getConcurrentConsumers();
+ }
+ }
+
+ return -1;
+
+ }
+
private void initializeTopLevelController( AnalysisEngineController cntlr, ApplicationContext ctx)
throws Exception
{
@@ -181,7 +200,13 @@
}
}
-
+ int concurrentConsumerCountOnReplies = getConcurrentConsumerCount(ctx);
+ // Configure and initialize vm transport in the top level aggregate.
+ // The aggregate will initialize all delegates with the vm transport.
+ if ( System.getProperty("UseVmTransport") != null )
+ {
+ ((AggregateAnalysisEngineController) cntlr).initializeVMTransport(concurrentConsumerCountOnReplies);
+ }
// Complete initialization of the aggregate by sending
// getMeta requests to
// all remote delegates (if any). Collocated delegates
Modified: incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src/main/java/org/apache/uima/adapter/jms/activemq/UimaEEAdminSpringContext.java
URL: http://svn.apache.org/viewvc/incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src/main/java/org/apache/uima/adapter/jms/activemq/UimaEEAdminSpringContext.java?rev=697893&r1=697892&r2=697893&view=diff
==============================================================================
--- incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src/main/java/org/apache/uima/adapter/jms/activemq/UimaEEAdminSpringContext.java (original)
+++ incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src/main/java/org/apache/uima/adapter/jms/activemq/UimaEEAdminSpringContext.java Mon Sep 22 09:42:38 2008
@@ -72,6 +72,27 @@
{
return springContainer;
}
+
+ public int getConcurrentConsumerCount( String anEndpointName )
+ {
+ try
+ {
+ if ( anEndpointName != null && anEndpointName.trim().length() > 0 && springContainer.isActive() && listenerMap.containsKey(anEndpointName))
+ {
+ ListenerEntry listenerEntry = null;
+
+ listenerEntry =((ListenerEntry)listenerMap.get(anEndpointName));
+ if ( listenerEntry != null && listenerEntry.isStopped() == false )
+ {
+ UimaDefaultMessageListenerContainer listenerContainer =
+ listenerEntry.getListenerContainer();
+ return listenerContainer.getConcurrentConsumers();
+ }
+ }
+ }
+ catch( Exception e) {}
+ return -1;
+ }
/**
* Stops a listener thread on a given endpoint
*/
Modified: incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src/main/java/org/apache/uima/adapter/jms/client/BaseUIMAAsynchronousEngine_impl.java
URL: http://svn.apache.org/viewvc/incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src/main/java/org/apache/uima/adapter/jms/client/BaseUIMAAsynchronousEngine_impl.java?rev=697893&r1=697892&r2=697893&view=diff
==============================================================================
--- incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src/main/java/org/apache/uima/adapter/jms/client/BaseUIMAAsynchronousEngine_impl.java (original)
+++ incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src/main/java/org/apache/uima/adapter/jms/client/BaseUIMAAsynchronousEngine_impl.java Mon Sep 22 09:42:38 2008
@@ -1,4 +1,3 @@
-
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
@@ -132,7 +131,6 @@
/**
* Initialize JMS Message with properties relevant to Process CAS request.
*/
-
protected void setCASMessage(String aCasReferenceId, CAS aCAS, TextMessage msg) throws ResourceProcessException
{
try{
Modified: incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src/test/java/org/apache/uima/ee/test/TestUimaASExtended.java
URL: http://svn.apache.org/viewvc/incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src/test/java/org/apache/uima/ee/test/TestUimaASExtended.java?rev=697893&r1=697892&r2=697893&view=diff
==============================================================================
--- incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src/test/java/org/apache/uima/ee/test/TestUimaASExtended.java (original)
+++ incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src/test/java/org/apache/uima/ee/test/TestUimaASExtended.java Mon Sep 22 09:42:38 2008
@@ -44,6 +44,7 @@
import org.apache.uima.aae.client.UimaASStatusCallbackListener;
import org.apache.uima.aae.client.UimaAsynchronousEngine;
import org.apache.uima.aae.controller.Endpoint;
+import org.apache.uima.aae.error.MessageTimeoutException;
import org.apache.uima.aae.error.ServiceShutdownException;
import org.apache.uima.adapter.jms.JmsConstants;
import org.apache.uima.adapter.jms.activemq.JmsOutputChannel;
@@ -159,7 +160,7 @@
deployService(eeUimaEngine, relativePath+"/Deploy_NoOpAnnotator.xml");
deployService(eeUimaEngine, relativePath+"/Deploy_AggregateAnnotator.xml");
super.setExpectingServiceShutdown();
- runTest(null,eeUimaEngine,String.valueOf(broker.getMasterConnectorURI()),"TopLevelTaeQueue", 0, EXCEPTION_LATCH);
+ runTest(null,eeUimaEngine,String.valueOf(broker.getMasterConnectorURI()),"TopLevelTaeQueue", 0, PROCESS_LATCH);
}
/**
* Tests a simple Aggregate with one remote Delegate and collocated Cas Multiplier
@@ -173,9 +174,39 @@
deployService(eeUimaEngine, relativePath+"/Deploy_NoOpAnnotator.xml");
deployService(eeUimaEngine, relativePath+"/Deploy_AggregateUsingRemoteTempQueue.xml");
runTest(null,eeUimaEngine,String.valueOf(broker.getMasterConnectorURI()),"TopLevelTaeQueue", 1, PROCESS_LATCH);
+
}
- /**
+ /**
+ * Tests a simple Aggregate with one remote Delegate and collocated Cas Multiplier
+ *
+ * @throws Exception
+ */
+ public void testProcessAggregateServiceWith1000Docs() throws Exception
+ {
+ System.out.println("-------------- testProcessAggregateServiceWith1000Docs -------------");
+ BaseUIMAAsynchronousEngine_impl eeUimaEngine = new BaseUIMAAsynchronousEngine_impl();
+ deployService(eeUimaEngine, relativePath+"/Deploy_NoOpAnnotator.xml");
+ deployService(eeUimaEngine, relativePath+"/Deploy_NoOpAnnotator.xml");
+ deployService(eeUimaEngine, relativePath+"/Deploy_NoOpAnnotator.xml");
+ deployService(eeUimaEngine, relativePath+"/Deploy_AggregateAnnotatorWithInternalCM1000Docs.xml");
+// deployService(eeUimaEngine, relativePath+"/Deploy_AggregateAnnotatorWith1MillionDocs.xml");
+ runTest(null,eeUimaEngine,String.valueOf(broker.getMasterConnectorURI()),"TopLevelTaeQueue", 1, PROCESS_LATCH);
+
+ }
+
+
+ public void testProcessAggregateWithInnerAggregateCM() throws Exception
+ {
+ System.out.println("-------------- testProcessAggregateWithInnerAggregateCM() -------------");
+ BaseUIMAAsynchronousEngine_impl eeUimaEngine = new BaseUIMAAsynchronousEngine_impl();
+ System.setProperty(JmsConstants.SessionTimeoutOverride, "2500000");
+ deployService(eeUimaEngine, relativePath+"/Deploy_ComplexAggregateWithInnerAggregateCM.xml");
+ super.setExpectingServiceShutdown();
+ runTest(null,eeUimaEngine,String.valueOf(broker.getMasterConnectorURI()),"TopLevelTaeQueue", 1, PROCESS_LATCH);
+ }
+
+ /**
* Tests exception thrown in the Uima EE Client when the Collection Reader is added after
* the uima ee client is initialized
*
@@ -444,6 +475,9 @@
Map<String, Object> appCtx = buildContext( String.valueOf(broker.getMasterConnectorURI()), "TopLevelTaeQueue" );
// Set an explicit process timeout so one of the 1st parallels is disabled but 2nd parallel flow continues.
appCtx.put(UimaAsynchronousEngine.Timeout, 20000 );
+ addExceptionToignore(org.apache.uima.aae.error.UimaEEServiceException.class);
+ addExceptionToignore(org.apache.uima.aae.error.UimaASProcessCasTimeout.class);
+
runTest(appCtx, eeUimaEngine, null, null, 1, PROCESS_LATCH);
}
@@ -655,6 +689,7 @@
Map<String, Object> appCtx = buildContext( String.valueOf(broker.getMasterConnectorURI()), "TopLevelTaeQueue" );
// Set an explicit CPC timeout as exceptions thrown in the 2nd annotator's CPC don't reach the client.
appCtx.put(UimaAsynchronousEngine.CpcTimeout, 20000 );
+ addExceptionToignore(org.apache.uima.aae.error.UimaEEServiceException.class);
runTest(appCtx,eeUimaEngine,String.valueOf(broker.getMasterConnectorURI()),"TopLevelTaeQueue", 1, PROCESS_LATCH); //PC_LATCH);
}
@@ -667,6 +702,7 @@
deployService(eeUimaEngine, relativePath+"/Deploy_NoOpAnnotatorWithException.xml");
deployService(eeUimaEngine, relativePath+"/Deploy_NoOpAnnotator2.xml");
deployService(eeUimaEngine, relativePath+"/Deploy_AggregateWithParallelFlowDisableOnDelegateFailure.xml");
+ addExceptionToignore(org.apache.uima.aae.error.UimaEEServiceException.class);
runTest(null,eeUimaEngine,String.valueOf(broker.getMasterConnectorURI()),"TopLevelTaeQueue", 1, PROCESS_LATCH); //PC_LATCH);
}
Modified: incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src/test/java/org/apache/uima/ee/test/utils/BaseTestSupport.java
URL: http://svn.apache.org/viewvc/incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src/test/java/org/apache/uima/ee/test/utils/BaseTestSupport.java?rev=697893&r1=697892&r2=697893&view=diff
==============================================================================
--- incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src/test/java/org/apache/uima/ee/test/utils/BaseTestSupport.java (original)
+++ incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src/test/java/org/apache/uima/ee/test/utils/BaseTestSupport.java Mon Sep 22 09:42:38 2008
@@ -20,6 +20,7 @@
package org.apache.uima.ee.test.utils;
import java.net.URL;
+import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
@@ -66,7 +67,8 @@
protected boolean expectingServiceShutdownException = false;
protected long expectedProcessTime = 0;
boolean serviceShutdownException = false;
-
+ List<Class> exceptionsToIgnore = new ArrayList<Class>();
+
protected String deployService(BaseUIMAAsynchronousEngine_impl eeUimaEngine, String aDeploymentDescriptorPath) throws Exception
{
Map<String, Object> appCtx = new HashMap();
@@ -77,6 +79,27 @@
return containerId;
}
+ protected void addExceptionToignore( Class anExceptionToIgnore)
+ {
+ exceptionsToIgnore.add( anExceptionToIgnore );
+ }
+
+ protected boolean ignoreException( Class<?> anException )
+ {
+ if ( anException == null )
+ {
+ return true;
+ }
+ for( int i=0; i < exceptionsToIgnore.size(); i++)
+ {
+ String name = anException.getName();
+ if ( name.equals( exceptionsToIgnore.get(i).getName()) )
+ {
+ return true;
+ }
+ }
+ return false;
+ }
protected void initialize(BaseUIMAAsynchronousEngine_impl eeUimaEngine, Map<String, Object> appCtx) throws Exception
{
eeUimaEngine.addStatusCallbackListener(this);
@@ -497,10 +520,11 @@
* is received. The reply contains either the CAS or an exception that occurred
* while processing the CAS.
*/
- public void entityProcessComplete(CAS aCAS, EntityProcessStatus aProcessStatus)
+ public synchronized void entityProcessComplete(CAS aCAS, EntityProcessStatus aProcessStatus)
{
String casReferenceId="";
String parentCasReferenceId="";
+ boolean expectedException = false;
if ( aProcessStatus instanceof UimaASProcessStatus )
{
casReferenceId =
@@ -523,7 +547,11 @@
{
serviceShutdownException = true;
}
- if ( !expectingServiceShutdownException )
+ else if ( ignoreException( e.getClass()))
+ {
+ expectedException = true;
+ }
+ if ( !expectedException && !expectingServiceShutdownException )
{
e.printStackTrace();
}
@@ -538,7 +566,11 @@
}
else if (processCountLatch != null)
{
- if ( !(serviceShutdownException && expectingServiceShutdownException) )
+
+
+
+
+ if ( !expectedException && !(serviceShutdownException && expectingServiceShutdownException) )
{
unexpectedException = true;
System.out.println(" ... when expecting normal completion!");
Modified: incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src/test/resources/deployment/Deploy_AggregateAnnotatorWith1MillionDocs.xml
URL: http://svn.apache.org/viewvc/incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src/test/resources/deployment/Deploy_AggregateAnnotatorWith1MillionDocs.xml?rev=697893&r1=697892&r2=697893&view=diff
==============================================================================
--- incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src/test/resources/deployment/Deploy_AggregateAnnotatorWith1MillionDocs.xml (original)
+++ incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src/test/resources/deployment/Deploy_AggregateAnnotatorWith1MillionDocs.xml Mon Sep 22 09:42:38 2008
@@ -33,19 +33,19 @@
<topDescriptor>
<import location="../descriptors/analysis_engine/SimpleTestAggregateWith1MillionDocs.xml"/>
</topDescriptor>
- <analysisEngine>
+ <analysisEngine inputQueueScaleout="3" internalReplyQueueScaleout="5">
<delegates>
<analysisEngine key="TestMultiplier">
<casMultiplier poolSize="5"/>
</analysisEngine>
- <remoteAnalysisEngine key="NoOp">
+ <remoteAnalysisEngine key="NoOp" remoteReplyQueueScaleout="3">
<inputQueue endpoint="NoOpAnnotatorQueue" brokerURL="tcp://localhost:8118"/>
<serializer method="xmi"/>
<asyncAggregateErrorConfiguration>
<getMetadataErrors maxRetries="3" timeout="5000" errorAction="continue" />
- <processCasErrors maxRetries="0" timeout="5000" thresholdCount="1" thresholdAction="terminate" />
+ <processCasErrors maxRetries="0" timeout="5000" thresholdCount="1" thresholdAction="continue" />
</asyncAggregateErrorConfiguration>
</remoteAnalysisEngine>
Modified: incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src/test/resources/deployment/Deploy_AggregateAnnotatorWithInternalCM1000Docs.xml
URL: http://svn.apache.org/viewvc/incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src/test/resources/deployment/Deploy_AggregateAnnotatorWithInternalCM1000Docs.xml?rev=697893&r1=697892&r2=697893&view=diff
==============================================================================
--- incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src/test/resources/deployment/Deploy_AggregateAnnotatorWithInternalCM1000Docs.xml (original)
+++ incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src/test/resources/deployment/Deploy_AggregateAnnotatorWithInternalCM1000Docs.xml Mon Sep 22 09:42:38 2008
@@ -33,7 +33,7 @@
<topDescriptor>
<import location="../descriptors/analysis_engine/SimpleTestAggregateWith1000DocCM.xml"/>
</topDescriptor>
- <analysisEngine>
+ <analysisEngine internalReplyQueueScaleout="3">
<delegates>
<analysisEngine key="TestMultiplier">
Added: incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src/test/resources/deployment/Deploy_ComplexAggregateWithInnerAggregateCM.xml
URL: http://svn.apache.org/viewvc/incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src/test/resources/deployment/Deploy_ComplexAggregateWithInnerAggregateCM.xml?rev=697893&view=auto
==============================================================================
--- incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src/test/resources/deployment/Deploy_ComplexAggregateWithInnerAggregateCM.xml (added)
+++ incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src/test/resources/deployment/Deploy_ComplexAggregateWithInnerAggregateCM.xml Mon Sep 22 09:42:38 2008
@@ -0,0 +1,57 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+ <!--
+ ***************************************************************
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ ***************************************************************
+ -->
+
+<analysisEngineDeploymentDescription xmlns="http://uima.apache.org/resourceSpecifier">
+
+ <name>Top Level TAE</name>
+ <description></description>
+
+ <deployment protocol="jms" provider="activemq">
+ <casPool numberOfCASes="5"/>
+ <service>
+ <inputQueue endpoint="TopLevelTaeQueue" brokerURL="tcp://localhost:8118" prefetch="1"/>
+ <topDescriptor>
+ <import location="../descriptors/analysis_engine/ComplexAggregateWithInnerAggregateCM.xml"/>
+ </topDescriptor>
+ <analysisEngine>
+ <delegates>
+
+ <analysisEngine key="TestMultiplier">
+ <casMultiplier poolSize="5"/>
+ </analysisEngine>
+
+ <analysisEngine key="MeetingDetectorAggregate" async="true">
+ <casMultiplier poolSize="25" initialFsHeapSize="20000"/>
+ <asyncAggregateErrorConfiguration>
+ <getMetadataErrors maxRetries="0" timeout="60000" errorAction="terminate"/>
+ <processCasErrors maxRetries="0" timeout="0" continueOnRetryFailure="false" thresholdCount="0" thresholdWindow="0" thresholdAction="terminate"/>
+ <collectionProcessCompleteErrors timeout="0" additionalErrorAction="terminate"/>
+ </asyncAggregateErrorConfiguration>
+ </analysisEngine>
+
+ </delegates>
+ </analysisEngine>
+ </service>
+ </deployment>
+
+</analysisEngineDeploymentDescription>
Added: incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src/test/resources/descriptors/analysis_engine/ComplexAggregateWithInnerAggregateCM.xml
URL: http://svn.apache.org/viewvc/incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src/test/resources/descriptors/analysis_engine/ComplexAggregateWithInnerAggregateCM.xml?rev=697893&view=auto
==============================================================================
--- incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src/test/resources/descriptors/analysis_engine/ComplexAggregateWithInnerAggregateCM.xml (added)
+++ incubator/uima/sandbox/trunk/uima-as/uimaj-as-activemq/src/test/resources/descriptors/analysis_engine/ComplexAggregateWithInnerAggregateCM.xml Mon Sep 22 09:42:38 2008
@@ -0,0 +1,72 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+ <!--
+ ***************************************************************
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ ***************************************************************
+ -->
+
+<analysisEngineDescription xmlns="http://uima.apache.org/resourceSpecifier">
+ <frameworkImplementation>org.apache.uima.java</frameworkImplementation>
+ <primitive>false</primitive>
+ <delegateAnalysisEngineSpecifiers>
+
+ <delegateAnalysisEngine key="TestMultiplier">
+ <import location="../multiplier/SimpleCasGenerator.xml"/>
+ </delegateAnalysisEngine>
+
+
+ <delegateAnalysisEngine key="MeetingDetectorAggregate">
+ <import location="SimpleTestAggregateCasMultiplier.xml"/>
+ </delegateAnalysisEngine>
+ </delegateAnalysisEngineSpecifiers>
+ <analysisEngineMetaData>
+ <name>Complex Top Level Aggregate TAE</name>
+ <description>Detects Meetings and Room Numbers</description>
+ <configurationParameters/>
+ <configurationParameterSettings/>
+ <flowConstraints>
+ <fixedFlow>
+
+ <node>TestMultiplier</node>
+ <node>MeetingDetectorAggregate</node>
+
+ </fixedFlow>
+ </flowConstraints>
+ <capabilities>
+ <capability>
+ <inputs/>
+ <outputs>
+ <type allAnnotatorFeatures="true">org.apache.uima.tutorial.Meeting</type>
+ <type allAnnotatorFeatures="true">org.apache.uima.tutorial.RoomNumber</type>
+ <type allAnnotatorFeatures="true">org.apache.uima.tutorial.DateAnnot</type>
+ <type allAnnotatorFeatures="true">org.apache.uima.tutorial.TimeAnnot</type>
+
+ </outputs>
+ <languagesSupported>
+ <language>en</language>
+ </languagesSupported>
+ </capability>
+ </capabilities>
+ <operationalProperties>
+ <modifiesCas>true</modifiesCas>
+ <multipleDeploymentAllowed>true</multipleDeploymentAllowed>
+ <outputsNewCASes>false</outputsNewCASes>
+ </operationalProperties>
+ </analysisEngineMetaData>
+</analysisEngineDescription>