my application crashes with the exit status of 134, but my code doesnt
contain any System.exit(134) so i think this value comes from the jvm.
unfortunately I couldnt find the meaning of this exit status in the web
(perhaps something like "not enough shared memory").
could anybody help me??
the VM version:
java version "1.3.0_02"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.3.0_02)
Java HotSpot(TM) Client VM (build 1.3.0_02, mixed mode)
If this is on a Unix box (I'm not sure from the description above), then a
process that exits because of a signal has an exit status of 128 plus the
signal number. Signal number 6 is probably SIGABRT, which most often means
that some piece of code in the process deliberately called the libc abort()
function, e.g. many implementations of the assert() macro.
Does your application contain any native code (accessed through JNI) that
might use assert(), abort() or SIGABRT? If not, then perhaps you're
tickling an assertion failure (i.e. bug) somewhere in the JDK's native code.
Thomas Maslen
mas...@pobox.com
Does 'mixed mode' mean that you are running with JIT enabled?
Try reproducing it with -nojit, -Xint or something like that.
I recall a problem with JIT of 1.2 or 1.3 on HP-UX that crashed JVM on
signal.
It happened when a variable set to null was tested with instanceof after
many (hundreds or so) iterations of a loop -- (seems to me) after all the
whole routine was JIT-complied. It never happened with JIT disabled.
For me it looks like a JVM bug, but I found fixing my code the easier
solution. Still it is always good to check for null before instanceof...
MS