uima-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From shahid ashraf <sha...@trialx.com>
Subject Re: CAS Pool
Date Fri, 10 Feb 2017 17:17:19 GMT
Hi

The Full stack trace is below, it only happens when there are more then one
thread:

Feb 10, 2017 8:44:06 PM
org.apache.uima.analysis_engine.impl.PrimitiveAnalysisEngine_impl
callAnalysisComponentProcess(430)

SEVERE: Exception occurred

org.apache.uima.analysis_engine.AnalysisEngineProcessException

at org.apache.ctakes.lvg.ae.LvgAnnotator.process(LvgAnnotator.java:310)

at
org.apache.uima.analysis_component.JCasAnnotator_ImplBase.process(JCasAnnotator_ImplBase.java:48)

at
org.apache.uima.analysis_engine.impl.PrimitiveAnalysisEngine_impl.callAnalysisComponentProcess(PrimitiveAnalysisEngine_impl.java:396)

at
org.apache.uima.analysis_engine.impl.PrimitiveAnalysisEngine_impl.processAndOutputNewCASes(PrimitiveAnalysisEngine_impl.java:314)

at
org.apache.uima.analysis_engine.asb.impl.ASB_impl$AggregateCasIterator.processUntilNextOutputCas(ASB_impl.java:570)

at
org.apache.uima.analysis_engine.asb.impl.ASB_impl$AggregateCasIterator.<init>(ASB_impl.java:412)

at
org.apache.uima.analysis_engine.asb.impl.ASB_impl.process(ASB_impl.java:344)

at
org.apache.uima.analysis_engine.impl.AggregateAnalysisEngine_impl.processAndOutputNewCASes(AggregateAnalysisEngine_impl.java:265)

at
org.apache.uima.analysis_engine.impl.AnalysisEngineImplBase.process(AnalysisEngineImplBase.java:269)

at
org.apache.uima.analysis_engine.impl.MultiprocessingAnalysisEngine_impl.process(MultiprocessingAnalysisEngine_impl.java:199)

at
org.apache.ctakes.web.client.servlet.DemoServlet.doPost(DemoServlet.java:135)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:755)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:848)

at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:684)

at
org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:501)

at
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:137)

at
org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:557)

at
org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:231)

at
org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1086)

at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:428)

at
org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:193)

at
org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1020)

at
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135)

at
org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116)

at org.eclipse.jetty.server.Server.handle(Server.java:370)

at
org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:494)

at
org.eclipse.jetty.server.AbstractHttpConnection.content(AbstractHttpConnection.java:982)

at
org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.content(AbstractHttpConnection.java:1043)

at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:865)

at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:240)

at
org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:82)

at
org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:667)

at
org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:52)

at
org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:608)

at
org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:543)

at java.lang.Thread.run(Thread.java:745)

Caused by: org.apache.uima.analysis_engine.AnalysisEngineProcessException

at
org.apache.ctakes.lvg.ae.LvgAnnotator.setCanonicalForm(LvgAnnotator.java:372)

at
org.apache.ctakes.lvg.ae.LvgAnnotator.annotateRange(LvgAnnotator.java:342)

at org.apache.ctakes.lvg.ae.LvgAnnotator.process(LvgAnnotator.java:307)

... 35 more
Caused by: java.lang.NullPointerException


On Fri, Feb 10, 2017 at 10:22 PM, Marshall Schor <msa@schor.com> wrote:

> Hi,
>
> This exception is being thrown from CTakes, I think.  UIMA is "wrapping"
> this
> exception, and even CTakes is wrapping it.
>
> Can you post the full stack trace?  I'm looking for the lines that would
> follow
> something like:
> "Caused by: java.lang.NullPointerException" which would indicate the
> actual
> cause, I hope.
>
> Also, this is just a wild guess, but could you check to be sure you've set
> up
> the CAS for CTakes to process according to what it requires (I'm not
> familiar
> with CTakes requirements)?
>
> -Marshall
>
>
> On 2/10/2017 11:09 AM, shahid ashraf wrote:
> > Anything on the previous mail and
> >
> > *Also i tried the setting up  Cas Pool based on descriptor file using
> below
> > code... when i increase the number of threads from 1 i get following
> errors*
> >
> > public class MyApplication {
> >   private CasPool mCasPool;
> >
> >   private AnalysisEngine mAnalysisEngine;
> >
> >   public MyApplication()
> >   {
> >     //get Resource Specifier from XML file
> >     XMLInputSource in = new XMLInputSource("MyDescriptor.xml");
> >     ResourceSpecifier specifier =
> >       UIMAFramework.getXMLParser().parseResourceSpecifier(in);
> >
> >     //Create multithreadable AE that will
> >     //Accept 3 simultaneous requests
> >     //The 3rd parameter specifies a timeout.
> >     //When the number of simultaneous requests exceeds 3,
> >     // additional requests will wait for other requests to finish.
> >     // This parameter determines the maximum number of milliseconds
> >     // that a new request should wait before throwing an
> >     // - a value of 0 will cause them to wait forever.
> >     mAnalysisEngine = UIMAFramework.produceAnalysisEngine(
> specifier,3,0);
> >
> >     //create CAS pool with 3 CAS instances
> >     mCasPool = new CasPool(3, mAnalysisEngine);
> >   }
> >
> >   // Notice this is no longer "synchronized"
> >   public void analyzeDocument(String aDoc) {
> >     //check out a CAS instance (argument 0 means no timeout)
> >     CAS cas = mCasPool.getCas(0);
> >     try {
> >       //analyze a document
> >       cas.setDocumentText(aDoc);
> >       mAnalysisEngine.process(cas);
> >       doSomethingWithResults(cas);
> >     } finally {
> >       //MAKE SURE we release the CAS instance
> >       mCasPool.releaseCas(cas);
> >     }
> >   }
> >   ...
> > }
> >
> > eb 10, 2017 8:44:06 PM
> > org.apache.uima.analysis_engine.impl.PrimitiveAnalysisEngine_impl
> > callAnalysisComponentProcess(430)
> >
> > SEVERE: Exception occurred
> >
> > org.apache.uima.analysis_engine.AnalysisEngineProcessException
> >
> >       at org.apache.ctakes.lvg.ae.LvgAnnotator.process(
> LvgAnnotator.java:310)
> >
> >       at org.apache.uima.analysis_component.JCasAnnotator_
> ImplBase.process(JCasAnnotator_ImplBase.java:48)
> >
> >       at org.apache.uima.analysis_engine.impl.
> PrimitiveAnalysisEngine_impl.callAnalysisComponentProcess(
> PrimitiveAnalysisEngine_impl.java:396)
> >
> >       at org.apache.uima.analysis_engine.impl.
> PrimitiveAnalysisEngine_impl.processAndOutputNewCASes(
> PrimitiveAnalysisEngine_impl.java:314)
> >
> >       at org.apache.uima.analysis_engine.asb.impl.ASB_impl$
> AggregateCasIterator.processUntilNextOutputCas(ASB_impl.java:570)
> >
> >       at org.apache.uima.analysis_engine.asb.impl.ASB_impl$
> AggregateCasIterator.<init>(ASB_impl.java:412)
> >
> >       at org.apache.uima.analysis_engine.asb.impl.ASB_impl.
> process(ASB_impl.java:344)
> >       at org.apache.uima.analysis_engine.impl.
> AggregateAnalysisEngine_impl.processAndOutputNewCASes(
> AggregateAnalysisEngine_impl.java:265)aused
> > by: org.apache.uima.analysis_engine.AnalysisEngineProcessException
> >
> > at
> > org.apache.ctakes.lvg.ae.LvgAnnotator.setCanonicalForm(
> LvgAnnotator.java:372)
> >
> > at
> > org.apache.ctakes.lvg.ae.LvgAnnotator.annotateRange(
> LvgAnnotator.java:342)
> >
> > at org.apache.ctakes.lvg.ae.LvgAnnotator.process(LvgAnnotator.java:307)
> >
> > ... 35 more
> > Caused by: java.lang.NullPointerException
> >
> > Feb 10, 2017 8:44:06 PM
> > org.apache.uima.analysis_engine.impl.AggregateAnalysisEngine_impl
> > processAndOutputNewCASes(273)
> >
> > SEVERE: Exception occurred
> >
> > org.apache.uima.analysis_engine.AnalysisEngineProcessException
> >
> >       at org.apache.ctakes.lvg.ae.LvgAnnotator.process(
> LvgAnnotator.java:310)
> >
> >       at org.apache.uima.analysis_component.JCasAnnotator_
> ImplBase.process(JCasAnnotator_ImplBase.java:48)
> >
> >       at org.apache.uima.analysis_engine.impl.
> PrimitiveAnalysisEngine_impl.callAnalysisComponentProcess(
> PrimitiveAnalysisEngine_impl.java:396)
> >
> >       at org.apache.uima.analysis_engine.impl.
> PrimitiveAnalysisEngine_impl.processAndOutputNewCASes(
> PrimitiveAnalysisEngine_impl.java:314)
> >
> >       at org.apache.uima.analysis_engine.asb.impl.ASB_impl$
> AggregateCasIterator.processUntilNextOutputCas(ASB_impl.java:570)
> >
> >       at org.apache.uima.analysis_engine.asb.impl.ASB_impl$
> AggregateCasIterator.<init>(ASB_impl.java:412)
> >
> >       at org.apache.uima.analysis_engine.asb.impl.ASB_impl.
> process(ASB_impl.java:344)
> >
> >       at org.apache.uima.analysis_engine.impl.
> AggregateAnalysisEngine_impl.processAndOutputNewCASes(
> AggregateAnalysisEngine_impl.java:265)
> >       at
> >
> >
> >
> > On Fri, Feb 10, 2017 at 12:12 AM, shahid ashraf <shahid@trialx.com>
> wrote:
> >
> >> Hi Folks
> >>
> >> This is my first mail to the mailing list. I have just started looking
> >> into the uima architecture. Currently i am trying few things in ctakes.
> I
> >> need to use the JCAS pool for multithreading. https://uima.
> >> apache.org/d/uimaj-current/tutorials_and_users_guides.
> >> html#ugr.tug.applications.multi_threaded
> >> I need to know the equivalent of the following while using programmable
> >> bluider AE(org.apache.uima.fit.factory.AggregateBuilder;)
> >>
> >> mAnalysisEngine = UIMAFramework.produceAnalysisEngine(specifier,3,0);
> >>
> >> Currently i am building aggregate AE like this ... in which i need to
> set
> >> the property/field to 3 like in above.
> >>
> >> *In other words the questions is how to use the cas object pool for
> >> multiprocessing iusing programmable interface(AggregrateBuilder)
> instead of
> >> descriptor file approach.*
> >>
> >> --
> >> with Regards
> >> Shahid Ashraf
> >>
> >
> >
>
>


-- 
with Regards
Shahid Ashraf

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message