uima-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Marshall Schor <...@schor.com>
Subject Re: CAS Pool
Date Sun, 12 Feb 2017 16:16:48 GMT
Given this, it seems likely the difference is due to either:

- a difference in how the initial CASs are populated
- some issue with cTakes running in the mode of multiple pipelines - perhaps it
isn't designed to operated this way.

For instance, (for the 2nd reason above), it looks like the lvg code calls some
utility provided by a 3rd party.  That utility might not support being called on
multiple threads, concurrently.

-Marshall


On 2/12/2017 1:28 AM, shahid ashraf wrote:
> hi Marshall
>
> Thanks for you time. Yes i too reached to the line you pointed out ... Here
> is my analysis and Questions ... (forgive me if ask mediocre questions. i
> am a newbie to UIMA, Ctakes n Java :) )
>
> *String[] output = out.split("\\|");*
>
> *but issue seems *
>
> String out = lvgCmd.MutateToString(word);
>
> returns null
>
> This only happens when running the LVG via CAS pool( 4 threads ).
>
> My caspool
>
> pipeline = UIMAFramework.produceAnalysisEngine(specifier, 2, 0);
>
>  caspool = new CasPool(2, pipeline);
>
> My Question is why this happens in CAS pool (where each CAS has its own
> resource.)
>
> and seems it happens on even ... normal words ... but when testing these
> words one by one on same code (with cas pool) String out = lvgCmd
> .MutateToString(word); it returns back the canonical form
>
>
> Here is the log when
>
> String out = lvgCmd.MutateToString(word) *FAILS*
>
> WARN LvgAnnotator - mutateToString returned null for: anemia
>
> 12 Feb 2017 11:20:32  WARN LvgAnnotator - mutateToString returned null for:
> remained
>
> 12 Feb 2017 11:20:28  WARN LvgAnnotator - mutateToString returned null for:
> course
>
> 12 Feb 2017 11:20:28  WARN LvgAnnotator - mutateToString returned null for:
> profile.
>
> 12 Feb 2017 11:20:28  WARN LvgAnnotator - mutateToString returned null for:
> a
>
> 12 Feb 2017 11:20:25  WARN LvgAnnotator - mutateToString returned null for:
> pre-specified
>
> 12 Feb 2017 11:20:25  WARN LvgAnnotator - mutateToString returned null for:
> these
>
> 12 Feb 2017 11:20:25  WARN LvgAnnotator - mutateToString returned null for:
> inhibitors
>
> 12 Feb 2017 11:20:22  WARN LvgAnnotator - mutateToString returned null for:
> Many
>
> 12 Feb 2017 11:20:20  WARN LvgAnnotator - mutateToString returned null for:
> if
>
> 12 Feb 2017 11:20:15  WARN LvgAnnotator - mutateToString returned null for:
> third
>
> 12 Feb 2017 11:20:12  WARN LvgAnnotator - mutateToString returned null for:
> Prolonged
>
> When trying these on same code ... but single thread ... we are getting
> results from LVG...
>
>
> 12 Feb 2017 11:49:32  INFO LvgAnnotator - process(JCas)
>
> 12 Feb 2017 11:49:32  INFO LvgAnnotator - annotate over full doc text
>
> 12 Feb 2017 11:49:32  INFO LvgAnnotator - apply LVG processing to get
> canonical form
>
> 12 Feb 2017 11:49:32  INFO LvgAnnotator - canonicalForm == null:
> anemia|anemia|1|1|l+b|1|
>
> anemia|anemia|2|1|l+b|1|
>
> anemia|anemia|128|1|l+b|1|
>
> anemia|anemia|1024|1|l+b|1|
>
> anemia|anemion|128|512|l+b|1|
>
> anemia|anemium|128|512|l+b|1|
>
>
> 12 Feb 2017 11:49:32  INFO LvgAnnotator - apply LVG processing to get
> canonical form
>
> 12 Feb 2017 11:49:32  INFO LvgAnnotator - canonicalForm == null:
> placebo|placebo|1|1|l+b|1|
>
> placebo|placebo|2|1|l+b|1|
>
> placebo|placebo|128|1|l+b|1|
>
> placebo|placebo|1024|1|l+b|1|
>
>
> 12 Feb 2017 11:49:32  INFO LvgAnnotator - apply LVG processing to get
> canonical form
>
> 12 Feb 2017 11:49:32  INFO LvgAnnotator - canonicalForm == null:
> Prolonged|prolong|1024|1024|l+b|1|
>
> Prolonged|prolonge|1024|1024|l+b|1|
>
> Prolonged|prolonged|1|1|l+b|1|
>
> Prolonged|prolonged|2|1|l+b|1|
>
> Prolonged|prolonged|128|1|l+b|1|
>
> Prolonged|prolonged|1024|1|l+b|1|
>
> Prolonged|prolongeed|1024|1024|l+b|1|
>
>
> 12 Feb 2017 11:49:32  INFO LvgAnnotator - apply LVG processing to get
> canonical form
>
> 12 Feb 2017 11:49:32  INFO LvgAnnotator - canonicalForm == null:
> third|third|1|1|l+b|1|
>
> third|third|2|1|l+b|1|
>
> third|third|128|1|l+b|1|
>
> third|third|1024|1|l+b|1|
>
>
> 12 Feb 2017 11:49:32  INFO LvgAnnotator - apply LVG processing to get
> canonical form
>
> 12 Feb 2017 11:49:32  INFO LvgAnnotator - canonicalForm == null:
> inhibitors|inhibitor|128|512|l+b|1|
>
> inhibitors|inhibitor|1024|1024|l+b|1|
>
> inhibitors|inhibitors|1|1|l+b|1|
>
> inhibitors|inhibitors|2|1|l+b|1|
>
> inhibitors|inhibitors|128|1|l+b|1|
>
> inhibitors|inhibitors|1024|1|l+b|1|
>
>
> 12 Feb 2017 11:49:32  INFO LvgAnnotator - apply LVG processing to get
> canonical form
>
> 12 Feb 2017 11:49:32  INFO LvgAnnotator - canonicalForm == null:
> these|these|1|1|l+b|1|
>
> these|these|2|1|l+b|1|
>
> these|these|128|1|l+b|1|
>
> these|these|1024|1|l+b|1|
>
>
> 12 Feb 2017 11:49:32  INFO LvgAnnotator - apply LVG processing to get
> canonical form
>
> 12 Feb 2017 11:49:32  INFO LvgAnnotator - canonicalForm == null:
> pre-specified|pre-specifi|1024|1024|l+b|1|
>
> pre-specified|pre-specifie|1024|1024|l+b|1|
>
> pre-specified|pre-specified|1|1|l+b|1|
>
> pre-specified|pre-specified|2|1|l+b|1|
>
> pre-specified|pre-specified|128|1|l+b|1|
>
> pre-specified|pre-specified|1024|1|l+b|1|
>
> pre-specified|pre-specifieed|1024|1024|l+b|1|
>
> pre-specified|pre-specify|1024|1024|l+b|1|
>
>
> 12 Feb 2017 11:49:32  INFO LvgAnnotator - apply LVG processing to get
> canonical form
>
> 12 Feb 2017 11:49:32  INFO LvgAnnotator - canonicalForm == null:
> profile.|profile.|1|1|l+b|1|
>
> profile.|profile.|2|1|l+b|1|
>
> profile.|profile.|128|1|l+b|1|
>
> profile.|profile.|1024|1|l+b|1|
>
>
> 12 Feb 2017 11:49:32  INFO LvgAnnotator - apply LVG processing to get
> canonical form
>
> 12 Feb 2017 11:49:32  INFO LvgAnnotator - canonicalForm == null:
> course|course|1|1|l+b|1|
>
> course|course|2|1|l+b|1|
>
> course|course|128|1|l+b|1|
>
> course|course|1024|1|l+b|1|
>
>
> 12 Feb 2017 11:49:32  INFO LvgAnnotator - apply LVG processing to get
> canonical form
>
> 12 Feb 2017 11:49:32  INFO LvgAnnotator - canonicalForm == null:
> remained|remain|1024|1024|l+b|1|
>
> remained|remaine|1024|1024|l+b|1|
>
> remained|remained|1|1|l+b|1|
>
> remained|remained|2|1|l+b|1|
>
> remained|remained|128|1|l+b|1|
>
> remained|remained|1024|1|l+b|1|
>
> remained|remaineed|1024|1024|l+b|1|
>
>
> On Sun, Feb 12, 2017 at 8:05 AM, Marshall Schor <msa@schor.com> wrote:
>
>> Hi,
>>
>> Thanks for posting the release and the cause of the NullPointerException.
>>
>> The release looks to be a not-yet-released version of the development
>> currently
>> being done for the next version of cTakes.  I looked at the current "trunk"
>> version for that module in SVN.
>>
>> I can't be sure (because you are running with a -SNAPSHOT which gets
>> replaced
>> all the time as development occurs on the Trunk), but if the code in SVN
>> matches
>> what you're running, then the problem is on this line:
>>
>> String[] output = out.split("\\|");
>>
>> Getting a NullPointerException happens if "out" is null.
>>
>> "out" is set in the previous line:
>>
>> String out = lvgCmd.MutateToString(word);
>>
>> I don't know about cTakes code, so you should best take up this analysis
>> further
>> with them, to try and see why the MutateToString returned a null result.
>> Please ask your question on the cTakes mailing list.  At this point UIMA
>> is only
>> reporting the error that occurred there.
>>
>> -Marshall
>>
>>
>> On 2/11/2017 12:58 AM, shahid ashraf wrote:
>>
>> ctakes.version>3.2.3-SNAPSHOT</ctakes.version>
>>
>>
>> On Sat, Feb 11, 2017 at 4:24 AM, Marshall Schor <msa@schor.com
>> <mailto:msa@schor.com>> wrote:
>>
>> Thanks!
>>
>> It says the NullPointerException occurred in
>>
>> org.apache.ctakes.lvg.ae <http://org.apache.ctakes.lvg.ae>.
>> LvgAnnotator.setCanonicalForm(LvgAnnotator.java:365)
>>
>> In the current version of cTakes, this is a blank line :-)
>>
>> So, can you tell me the exact version of cTakes you are running?
>> -Marshall
>>
>
>


Mime
View raw message