Also this is the uima doc link which i implemented ... but did not work

https://uima.apache.org/d/uimaj-current/tutorials_and_users_guides.html#ugr.tug.applications.multi_threaded

On Fri, Feb 3, 2017 at 10:47 PM, shahid ashraf <[email protected]> wrote:

> Thanks Peter
>
> I had implemented the JCAS pool from uima in the servlet as well , which
> gives same error when servlet is accessed parallel, seems as there is some
> resources which gets blocked ... which are used by  the annotators possibly
> LVG/POSTAGGER. As servlet  threads try to access the same resources
> /pipeline instantiated. the demo sevlet creates the pipleline /AE whilie
> initializing.
>
> Here is the CAS pool thing which UIMA docs suggest for multi processing.
>
> pipeline = aggregateBuilder.createAggregate();
>
> jc = new JCasPool(5, pipeline);
>
> int s = jc.getSize();
>
>
> doPost{
>
> JCas jcas = jc.getJCas(0);
>
> jcas.setDocumentText(text);
>
> pipeline.process(jcas);
>
> }
>
> Yes i also thing to create a object pool for AEs i.e instantiate multiple
> AE pipeline objects in init servlet method ... dopost will use the object
> from that pool. If you some code snippet, kindly share (newbie to ctakes
> and java as well :))
>
> On Fri, Feb 3, 2017 at 10:24 PM, Abramowitsch, Peter <
> [email protected]> wrote:
>
>> I've had some experience pipelining ctakes behind a servlet (not the demo
>> servlet) and, without going deep into the code,  My feeling is that there
>> are no globally static data resources with instance level content.  It's
>> all just configuration and dictionaries.  Threading errors would only
>> occur if threads shared a CAS object. Or if one thread was trying to
>> modify the configuration that another thread was using.
>>
>> If you're looking for high performance, I would keep a small pool of
>> instantiated CAS objects with their Annotators loaded.   Then as each
>> request comes in via a different thread, you grab a CAS off the pool, call
>> reset on it to clean out all the annotations and then run the annotation
>> process, output put the contents and hand it back to the pool.  Obviously
>> entrance and exit to the pool resources would have to be guarded by
>> semaphores or another thread safe mechanism.
>>
>> - Peter
>>
>>
>> On 2/2/17, 1:47 PM, "shahid ashraf" <[email protected]> wrote:
>>
>> >Thanks sean..
>> >
>> >Seems it might have issue with thread safety of ctakes modules... mainly
>> >postagger. i too am guessing :P
>> >
>> >
>> >On Fri, Feb 3, 2017 at 2:46 AM, Finan, Sean <
>> >[email protected]> wrote:
>> >
>> >> Hi Shahid,
>> >>
>> >>
>> >>
>> >> Just fyi, That client app is not part of ctakes or supported by the
>> >> general ctakes community.  My initial guess would be that it ran out of
>> >> memory or had an empty or unreadable document.  Again, this is a
>> >>complete
>> >> shot in the dark as I don¹t use that servlet and the error report has
>> >> nothing specific with regard to ctakes.
>> >>
>> >>
>> >>
>> >> Sean
>> >>
>> >>
>> >>
>> >> *From:* shahid ashraf [mailto:[email protected]]
>> >> *Sent:* Thursday, February 02, 2017 8:37 AM
>> >> *To:* Finan, Sean; [email protected]; Andrey Kurdumov;
>> >> [email protected]
>> >> *Subject:* Annotator processing failed
>> >>
>> >>
>> >>
>> >> I am using ctakes examples java servlet from here
>> >>https://urldefense.proofpoint.com/v2/url?u=http-3A__
>> healthnlp.github&d=Dw
>> >>IFaQ&c=B73tqXN8Ec0ocRmZHMCntw&r=5LM1YwNyMUq7CWiSepCCsjTjwu
>> VF4uswNF8BK5Orm
>> >>10&m=n62PXSo5vUbtPKgTOb6r9eHOKo1b0coTcSA0ZvIfOvc&s=yxBTEl4
>> n0E2IfwyzT99vkS
>> >>KjRtANaj73OXm5RPPgVqw&e= .
>> >> io/examples/
>> >>
>> >><https://urldefense.proofpoint.com/v2/url?u=http-3A__
>> healthnlp.github.io_
>> >>examples_&d=DwMFaQ&c=qS4goWBT7poplM69zy_3xhKwEW14JZMSdioCo
>> ppxeFU&r=fs67Gv
>> >>lGZstTpyIisCYNYmQCP6r0bcpKGd4f7d4gTao&m=-pS4a8HsJtgy3fXJt8
>> JmXdvd3X9gG3l5U
>> >>R-hkoRDG0A&s=qaWZ-ReKaj42RMRONEYR2tHoDSKM2KFJT9DyzNdzNi4&e=>
>> >>
>> >> After processing some documents maybe 1000+ it gets this error
>> >>
>> >> javax.servlet.ServletException:
>> >>org.apache.uima.analysis_engine.AnalysisEngineProcessException:
>> >>Annotator processing failed.
>> >>
>> >>
>> >>org.apache.ctakes.web.client.servlet.DemoServlet.doPost(
>> DemoServlet.java:
>> >>103)
>> >>
>> >>         javax.servlet.http.HttpServlet.service(HttpServlet.java:650)
>> >>
>> >>         javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
>> >>
>> >>
>> >>org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
>> >>
>> >> *root cause*
>> >>
>> >> org.apache.uima.analysis_engine.AnalysisEngineProcessException:
>> >>Annotator processing failed.
>> >>
>> >>
>> >>org.apache.uima.analysis_engine.impl.PrimitiveAnalysisEngi
>> ne_impl.callAna
>> >>lysisComponentProcess(PrimitiveAnalysisEngine_impl.java:412)
>> >>
>> >>
>> >>org.apache.uima.analysis_engine.impl.PrimitiveAnalysisEngi
>> ne_impl.process
>> >>AndOutputNewCASes(PrimitiveAnalysisEngine_impl.java:314)
>> >>
>> >>
>> >>org.apache.uima.analysis_engine.asb.impl.ASB_impl$Aggregat
>> eCasIterator.pr
>> >>ocessUntilNextOutputCas(ASB_impl.java:570)
>> >>
>> >>
>> >>org.apache.uima.analysis_engine.asb.impl.ASB_impl$Aggregat
>> eCasIterator.<i
>> >>nit>(ASB_impl.java:412)
>> >>
>> >>
>> >>org.apache.uima.analysis_engine.asb.impl.ASB_impl.process(
>> ASB_impl.java:3
>> >>44)
>> >>
>> >>
>> >>org.apache.uima.analysis_engine.impl.AggregateAnalysisEngi
>> ne_impl.process
>> >>AndOutputNewCASes(AggregateAnalysisEngine_impl.java:265)
>> >>
>> >>
>> >>org.apache.uima.analysis_engine.asb.impl.ASB_impl$Aggregat
>> eCasIterator.pr
>> >>ocessUntilNextOutputCas(ASB_impl.java:570)
>> >>
>> >>
>> >>org.apache.uima.analysis_engine.asb.impl.ASB_impl$Aggregat
>> eCasIterator.<i
>> >>nit>(ASB_impl.java:412)
>> >>
>> >>
>> >>org.apache.uima.analysis_engine.asb.impl.ASB_impl.process(
>> ASB_impl.java:3
>> >>44)
>> >>
>> >>
>> >>org.apache.uima.analysis_engine.impl.AggregateAnalysisEngi
>> ne_impl.process
>> >>AndOutputNewCASes(AggregateAnalysisEngine_impl.java:265)
>> >>
>> >>
>> >>org.apache.uima.analysis_engine.impl.AnalysisEngineImplBas
>> e.process(Analy
>> >>sisEngineImplBase.java:269)
>> >>
>> >>
>> >>org.apache.uima.analysis_engine.impl.AnalysisEngineImplBas
>> e.process(Analy
>> >>sisEngineImplBase.java:284)
>> >>
>> >>
>> >>org.apache.ctakes.web.client.servlet.DemoServlet.doPost(
>> DemoServlet.java:
>> >>92)
>> >>
>> >>         javax.servlet.http.HttpServlet.service(HttpServlet.java:650)
>> >>
>> >>         javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
>> >>
>> >>
>> >>org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
>> >>
>> >> *root cause*
>> >>
>> >> java.lang.NullPointerException
>> >>
>> >>
>> >>
>> >> --
>> >>
>> >> with Regards
>> >>
>> >> Shahid Ashraf
>> >>
>> >
>> >
>> >
>> >--
>> >with Regards
>> >Shahid Ashraf
>>
>>
>
>
> --
> with Regards
> Shahid Ashraf
>



-- 
with Regards
Shahid Ashraf

Reply via email to