Hi Jörn, >From CVD I can repeatedly run aggregates containing cas mutiplier delegates. Can you be more specific about the scenario? For example, are you re-instantiating the AE between runs? Would it be easy for you to make a minimal code sample that demonstrates the problem?
Thanks, Eddie On Wed, Apr 22, 2009 at 5:20 AM, Jörn Kottmann <[email protected]> wrote: > Hi everyone, > > I am using the PEAR Api to install a AAE and run it. The first time it runs > everything is fine. > The second time it runs I get this exception: > > Apr 22, 2009 11:08:42 AM > org.apache.uima.analysis_engine.impl.AggregateAnalysisEngine_impl > processAndOutputNewCASes(269) > SEVERE: Exception occurred > org.apache.uima.analysis_engine.AnalysisEngineProcessException: The method > CasManager.defineCasPool() was called twice by the same Analysis Engine > (/Multiplier/). > at > org.apache.uima.analysis_engine.impl.PrimitiveAnalysisEngine_impl.callAnalysisComponentNext(PrimitiveAnalysisEngine_impl.java:516) > at > org.apache.uima.analysis_engine.impl.PrimitiveAnalysisEngine_impl$AnalysisComponentCasIterator.next(PrimitiveAnalysisEngine_impl.java:594) > at > org.apache.uima.analysis_engine.asb.impl.ASB_impl$AggregateCasIterator.processUntilNextOutputCas(ASB_impl.java:558) > at > org.apache.uima.analysis_engine.asb.impl.ASB_impl$AggregateCasIterator.<init>(ASB_impl.java:398) > at > org.apache.uima.analysis_engine.asb.impl.ASB_impl.process(ASB_impl.java:331) > at > org.apache.uima.analysis_engine.impl.AggregateAnalysisEngine_impl.processAndOutputNewCASes(AggregateAnalysisEngine_impl.java:261) > at > org.apache.uima.analysis_engine.impl.AnalysisEngineImplBase.process(AnalysisEngineImplBase.java:218) > at > org.apache.uima.analysis_engine.impl.PearAnalysisEngineWrapper.processAndOutputNewCASes(PearAnalysisEngineWrapper.java:273) > at > org.apache.uima.analysis_engine.impl.AnalysisEngineImplBase.process(AnalysisEngineImplBase.java:218) > at > dk.infopaq.trainserver.TrainingEngine$TrainingJob.run(TrainingEngine.java:229) > 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) > Caused by: org.apache.uima.UIMARuntimeException: The method > CasManager.defineCasPool() was called twice by the same Analysis Engine > (/Multiplier/). > at > org.apache.uima.resource.impl.CasManager_impl.defineCasPool(CasManager_impl.java:181) > at > org.apache.uima.resource.impl.CasManager_impl.defineCasPool(CasManager_impl.java:161) > at > org.apache.uima.impl.UimaContext_ImplBase.getEmptyCas(UimaContext_ImplBase.java:565) > at > org.apache.uima.analysis_component.CasMultiplier_ImplBase.getEmptyCAS(CasMultiplier_ImplBase.java:109) > at > dk.infopaq.nlp.repository.connector.HBaseReadCasMultiplier.next(HBaseReadCasMultiplier.java:123) > at > org.apache.uima.analysis_engine.impl.PrimitiveAnalysisEngine_impl.callAnalysisComponentNext(PrimitiveAnalysisEngine_impl.java:489) > ... 12 more > > For me it looks like that I have to do some cleanup after the first run, but > which methods must be called > after I am done with processing ? > > Currently I only call collectionProcessigComplete() on my AE. I tried to > call destory(), but that > did not help. The AAE contains a CasMultiplier and thats also the AE in > which it fails inside getEmptyCAS(). > > Thanks, > Jörn >
