You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@uima.apache.org by Steven Bethard <st...@gmail.com> on 2008/04/13 18:06:36 UTC
Diagnosing a Pattern StackOverflowError
So my CPE is dying with a "java.lang.StackOverflowError" dialog and
the following message printed to the console:
Apr 13, 2008 9:58:31 AM
org.apache.uima.collection.impl.cpm.engine.CPMThreadGroup process
SEVERE: The CPM thread group caught the following unhandled error:
java.lang.StackOverflowError (Thread Name: [Procesing Pipeline#1
Thread]::)
java.lang.StackOverflowError
at java.util.regex.Pattern$Curly.match1(Pattern.java:4258)
at java.util.regex.Pattern$Curly.match(Pattern.java:4207)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:4578)
at java.util.regex.Pattern$Loop.match(Pattern.java:4705)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4637)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4637)
at java.util.regex.Pattern$Single.match(Pattern.java:3314)
at java.util.regex.Pattern$Branch.match(Pattern.java:4538)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:4578)
at java.util.regex.Pattern$Curly.match1(Pattern.java:4258)
...
at java.util.regex.Pattern$Single.match(Pattern.java:3314)
Anyone know how to diagnose this problem? I can't see a reference to
any of my files, or even something in UIMA. (I looked at the
CPMThreadGroup class, but that doesn't seem to do much other than
handle caught exceptions.)
Steve
--
I'm not *in*-sane. Indeed, I am so far *out* of sane that you appear a
tiny blip on the distant coast of sanity.
--- Bucky Katt, Get Fuzzy
Re: Diagnosing a Pattern StackOverflowError
Posted by Steven Bethard <st...@gmail.com>.
On Sun, Apr 13, 2008 at 3:24 PM, Steven Bethard
<st...@gmail.com> wrote:
> On Sun, Apr 13, 2008 at 12:06 PM, Steven Bethard
> <st...@gmail.com> wrote:
>
> > Apr 13, 2008 9:58:31 AM
> > org.apache.uima.collection.impl.cpm.engine.CPMThreadGroup process
> > SEVERE: The CPM thread group caught the following unhandled error:
> > java.lang.StackOverflowError (Thread Name: [Procesing Pipeline#1
> > Thread]::)
> > java.lang.StackOverflowError
> > at java.util.regex.Pattern$Curly.match1(Pattern.java:4258)
> > at java.util.regex.Pattern$Curly.match(Pattern.java:4207)
> > at java.util.regex.Pattern$GroupHead.match(Pattern.java:4578)
> > at java.util.regex.Pattern$Loop.match(Pattern.java:4705)
> > at java.util.regex.Pattern$GroupTail.match(Pattern.java:4637)
> > at java.util.regex.Pattern$GroupTail.match(Pattern.java:4637)
> > at java.util.regex.Pattern$Single.match(Pattern.java:3314)
> > at java.util.regex.Pattern$Branch.match(Pattern.java:4538)
> > at java.util.regex.Pattern$GroupHead.match(Pattern.java:4578)
> > at java.util.regex.Pattern$Curly.match1(Pattern.java:4258)
> > ...
> > at java.util.regex.Pattern$Single.match(Pattern.java:3314)
>
>
> On Sun, Apr 13, 2008 at 1:27 PM, Eddie Epstein <ea...@gmail.com> wrote:
> > *StackOverflowError *is "thrown when a stack overflow occurs because an
> > application recurses too deeply." Maybe the exception catcher is looping.
>
> Well, it's clearly recursing on java.util.regex.Pattern. But I don't
> know who is using Pattern or where.
>
> > Check in uima.log file for the run. If there is none, make sure UIMA_HOME is
> > defined, and if still no log, modify $UIMA_HOME/config/Logger.properties to
> > get more logging; try Fine or Finest.
>
> I don't see any uima.log file generated anywhere. I'm running this
> through Eclipse, and I tried setting the UIMA_HOME variable, supplying
> -Djava.util.logging.config.file=myfile as a VM argument, and a few
> other things, but I've never seen any logging output except that
> printed to the console (as I showed in my last email). Is there
> something else I have to do in Eclipse to get a log file?
Nevermind, I figured this out. I set
-Djava.util.logging.config.file=$UIMA_HOME/config/Logger.properties
and then I got a log file. The FINE messages then showed me that the
last AnalysisEngine running before the StackOverflowError was our
SentenceSegmenter module:
4/13/08 3:30:12 PM - 16:
org.apache.uima.analysis_engine.impl.PrimitiveAnalysisEngine_impl.process:
FINE: AnalysisEngine SentenceSegmenter process begin
Thanks for the help! I should be able to debug the problem from here.
Steve
--
I'm not *in*-sane. Indeed, I am so far *out* of sane that you appear a
tiny blip on the distant coast of sanity.
--- Bucky Katt, Get Fuzzy
Re: Diagnosing a Pattern StackOverflowError
Posted by Eddie Epstein <ea...@gmail.com>.
On Sun, Apr 13, 2008 at 5:24 PM, Steven Bethard <st...@gmail.com>
wrote:
> Well, it's clearly recursing on java.util.regex.Pattern. But I don't
> know who is using Pattern or where.
Oh yeah, even I can see that now :)
>
> I don't see any uima.log file generated anywhere. I'm running this
> through Eclipse, and I tried setting the UIMA_HOME variable, supplying
> -Djava.util.logging.config.file=myfile as a VM argument, and a few
> other things, but I've never seen any logging output except that
> printed to the console (as I showed in my last email). Is there
> something else I have to do in Eclipse to get a log file?
>
Make sure that -Djava.util.logging.config.file points at a valid
configuration file; for example, using $UIMA_HOME/config/Logger.properties,
uncomment the last line and change it from
# org.apache.uima.level = ALL
to
org.apache.uima.level = FINE
That should give you a uima.log in the working directory specified by the
eclipse run configuration.
Eddie
Re: Diagnosing a Pattern StackOverflowError
Posted by Steven Bethard <st...@gmail.com>.
On Sun, Apr 13, 2008 at 12:06 PM, Steven Bethard
<st...@gmail.com> wrote:
> Apr 13, 2008 9:58:31 AM
> org.apache.uima.collection.impl.cpm.engine.CPMThreadGroup process
> SEVERE: The CPM thread group caught the following unhandled error:
> java.lang.StackOverflowError (Thread Name: [Procesing Pipeline#1
> Thread]::)
> java.lang.StackOverflowError
> at java.util.regex.Pattern$Curly.match1(Pattern.java:4258)
> at java.util.regex.Pattern$Curly.match(Pattern.java:4207)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4578)
> at java.util.regex.Pattern$Loop.match(Pattern.java:4705)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4637)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4637)
> at java.util.regex.Pattern$Single.match(Pattern.java:3314)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4538)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4578)
> at java.util.regex.Pattern$Curly.match1(Pattern.java:4258)
> ...
> at java.util.regex.Pattern$Single.match(Pattern.java:3314)
On Sun, Apr 13, 2008 at 1:27 PM, Eddie Epstein <ea...@gmail.com> wrote:
> *StackOverflowError *is "thrown when a stack overflow occurs because an
> application recurses too deeply." Maybe the exception catcher is looping.
Well, it's clearly recursing on java.util.regex.Pattern. But I don't
know who is using Pattern or where.
> Check in uima.log file for the run. If there is none, make sure UIMA_HOME is
> defined, and if still no log, modify $UIMA_HOME/config/Logger.properties to
> get more logging; try Fine or Finest.
I don't see any uima.log file generated anywhere. I'm running this
through Eclipse, and I tried setting the UIMA_HOME variable, supplying
-Djava.util.logging.config.file=myfile as a VM argument, and a few
other things, but I've never seen any logging output except that
printed to the console (as I showed in my last email). Is there
something else I have to do in Eclipse to get a log file?
Steve
--
I'm not *in*-sane. Indeed, I am so far *out* of sane that you appear a
tiny blip on the distant coast of sanity.
--- Bucky Katt, Get Fuzzy
Re: Diagnosing a Pattern StackOverflowError
Posted by Eddie Epstein <ea...@gmail.com>.
*StackOverflowError *is "thrown when a stack overflow occurs because an
application recurses too deeply." Maybe the exception catcher is looping.
Check in uima.log file for the run. If there is none, make sure UIMA_HOME is
defined, and if still no log, modify $UIMA_HOME/config/Logger.properties to
get more logging; try Fine or Finest.
On Sun, Apr 13, 2008 at 12:06 PM, Steven Bethard <st...@gmail.com>
wrote:
> So my CPE is dying with a "java.lang.StackOverflowError" dialog and
> the following message printed to the console:
>
> Apr 13, 2008 9:58:31 AM
> org.apache.uima.collection.impl.cpm.engine.CPMThreadGroup process
> SEVERE: The CPM thread group caught the following unhandled error:
> java.lang.StackOverflowError (Thread Name: [Procesing Pipeline#1
> Thread]::)
> java.lang.StackOverflowError
> at java.util.regex.Pattern$Curly.match1(Pattern.java:4258)
> at java.util.regex.Pattern$Curly.match(Pattern.java:4207)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4578)
> at java.util.regex.Pattern$Loop.match(Pattern.java:4705)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4637)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4637)
> at java.util.regex.Pattern$Single.match(Pattern.java:3314)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4538)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4578)
> at java.util.regex.Pattern$Curly.match1(Pattern.java:4258)
> ...
> at java.util.regex.Pattern$Single.match(Pattern.java:3314)
>
> Anyone know how to diagnose this problem? I can't see a reference to
> any of my files, or even something in UIMA. (I looked at the
> CPMThreadGroup class, but that doesn't seem to do much other than
> handle caught exceptions.)
>
> Steve
> --
> I'm not *in*-sane. Indeed, I am so far *out* of sane that you appear a
> tiny blip on the distant coast of sanity.
> --- Bucky Katt, Get Fuzzy
>