what is - jvm error codes
TRANSCRIPT
-
8/3/2019 What is - JVM Error Codes
1/15
What Is - JVM error codes
Last Updated: 16 May 2006
Article Number: DB-00088
Summary
This article applies to BlackBerry wireless devices based on Java.
Description
The following table lists errors that can occur in the Java virtual machine
(JVM) on BlackBerry devices. Contact Research In Motion (RIM) if youencounter any error codes not listed in this table.
Value Error Description
101 Previous startup failed
The device was resetduring the JVM boot
process. The JVM foundthe boot in progress flag
was set on startup. The
screen is intended to breakcontinuous reset loops sothat corrective action can
be taken.
102 Invalid code in filesystem
The system checked the
COD files in the device formodification and
determined that a problemexists with one or more
COD files.
If all loads fail, a buildprocess error might occur
(a problem exists with
signing the COD files).
If a user action on thedevice resulted in this
-
8/3/2019 What is - JVM Error Codes
2/15
problem, the reset cycle is
continuous because thecode in the filesystem has
been corrupted. The onlyrecovery method is to wipe
the device and restore anew system.
103 Cannot find starting address
The starting address for
the boot COD file cannotbe found. This might
indicate that a boot CODfile has not been installed
on the device or that itsformat is invalid or
corrupt.
104 Uncaught:
An uncaught Java
exception was thrown bythe Java code anddiagnosed by the JVM.Execution can continue, or
the device can be attachedto a debugger on a
desktop computer. TheMicrosoft Windows
Event Viewer log should
contain the traceback ofthe thrown exception.
105 Example, DbRecSize( %d ) -> %d
The file system applicationprogramming interface
(API) has returned anerror status for a specific
operation. This mightindicate a corruptfilesystem or an error in
the JVM.
106 Graphics system errorAn error was detected inthe graphics system on the
device.
107 operator new() called
A C++ class in the JVMwas coded incorrectly to
inherit from VMRamObjectthat has the correct
-
8/3/2019 What is - JVM Error Codes
3/15
override for operator new.
Extract the current (post-reset) BUGDISP.
108 operator delete() called
A C++ class in the JVMhas was coded incorrectlyto inherit from
VMRamObject that has thecorrect override for
operator delete. Extractthe current (post-reset)
BUGDISP.
109PriorityMessageCount error:
The value returned byRimPriorityMessageCount
is negative. It shouldalways be greater than, or
equal to, zero. This
indicates an error in theoperating system code.Extract the current (post-reset) BUGDISP and
EVENTLOG.
110Non-idle event downtime error:
A problem was detected inthe accumulation of JVM
down time, whichrepresents how long the
JVM has been idle. Thisusually indicates an error
in the device firmware orthe JVM. This could also
occur if the tick count rollsover after 400 or more
days of device time.
111 Font engine error
An error was detected in
the font engine system onthe device. Extract the
current (post-reset)BUGDISP and EVENTLOG.
112 Java Native Assertion Failure
An error was detected in
the Java native code.Extract the current (post-
reset) BUGDISP andEVENTLOG.
-
8/3/2019 What is - JVM Error Codes
4/15
200Application manager threw an uncaughtexception
The application manager
event thread threw anuncaught exception and
cannot continue execution.
201 Crypto initialization code failed
The initialization of thecrypto system failed and
the device cannot continueexecution.
202An attack on the key store has been
detected
An attack has been
detected and executioncannot continue.
203 Console process died
The application manager
console process (usuallythe Ribbon) has died. This
is likely due to anuncaught exception during
execution.
204 Persistent Content Exception
An application tried to
commit a plaintext objectto the Persistent Store.
This will only happen ifContent Protection is on
and a process tries to savesomething in the
PersistentStore that ismarked as plaintext. Since
this exception was nothandled, the persistentstore is in a bad state. Youshould reset to roll back to
the last good commit
point.
Note: This is not a JVMerro; the JVM is simply
diagnosing the problem.The eventlog contains
information about theerroneous Java code.
501 VM_THREAD_SWITCHED: Internal Error
This is an error return
used internally in the VM.It should never be
-
8/3/2019 What is - JVM Error Codes
5/15
reported as a device error.
502VM_PROCESS_DEATH: All processesexited
The last Java process has
terminated. There isnothing left to execute.
503 VM_THREAD_DEATH: Internal ErrorThis is an error returnused internally in the VM.It should never be
reported as a device error.
504 VM_THREAD_SWITCH: Internal Error
This is an error returnused internally in the VM.It should never be
reported as a device error.
505 VM_BAD_CODE: Bad Byte CodeAn error has occurred in
the JIT compiler.
506 Uncaught Exception
An uncaught Javaexception was thrown in
the initial VM Java thread,
thus ending the only livethread in the system. Theeventlog contains thetraceback for the
exception.
507 Unsatisfied Link
A dependency on a CODfile could not be satisfied
because the COD file ismissing.
508 Invalid objectA problem has beendetected with a debuggercommand to the VM.
509VM_PPO_INFINITE_LOOP: infinite loopin PPO phase of GC
The maximum iteration
count for the PPO phase of
a GC must be themaximum number of file
handles in the system.
This error indicates thatthe iteration count exceedsthe maximum. Hence, a
flaw exists in the PPO loopor a corrupted file system.
The extra hex integer inthe error string is the flash
-
8/3/2019 What is - JVM Error Codes
6/15
id of the current record
where the infinite loop wasdetected.
510 Deadlock
All threads are waiting onobjects, resulting indeadlock. The system
cannot recover from thisstate because no thread
can release a lock.
511 Debug connection died
A problem has occurredwhile debugging that may
be caused by a VMproblem or an incorrect
debugging command beingsent to the VM.
512 GC Aborted
An idle garbage collection
has been interrupted by a
user event (for instance, akey was pressed or the
trackwheel was used).
513 needs running
An opcode requires that aclass execute
before it can continueexecution.
514 needs running
A new instance of a classhas been allocated and itmust be initialized by the
default constructor beforeit can be used.
515 Object group too big
The reachable objects form
a group that cannot be
represented properly bythe JVM because either
there are too many objects
or the total size of theobjects is too large.
516 Persistent ids exhausted
When committing apersistent object, the JVM
found that the persistentstore id counter reached
its limit. The object was
-
8/3/2019 What is - JVM Error Codes
7/15
not committed and a
critical error was reported.This error should not occur
unless a device is heavilyused for years.
517 Filesystem corrupt
An inconsistency was
detected in the JVMpersistent object store.
518 Unexpected longjmp
A garbage collection
marking phase wasterminated via a longjmp.
This indicates that themarking phase was
interrupted when it shouldhave completed without
interruption. This error
should not occur becausethese actions are executedwhen the device is notidle, and GCs can only be
interrupted when thedevice is idle.
519 Internal ErrorThe JVM host is missing or
has been disabled.
520 Internal Return
This is an internal statethat indicates a Java
method return needs to beexecuted.
521 Dangerous Wait
An Object.wait() was
executed by a thread thatholds a lock on another
object.
522 Interlaced synchronization
A thread acquired two
locks on objects in an
order that doesn't matchthe order in which a lockon the two types werepreviously acquired. Thisindicates a future potential
deadlock situation and isreported. The check is only
available in the simulator
-
8/3/2019 What is - JVM Error Codes
8/15
under the control of the
JvmDebugLocksapplication switch.
523 System process died
A critical Java process hasterminated, and the devicecannot continue to operate
in a normal manner.
524 LMM error
An object has beenmarked as recovered by
the Low Memory Manager,but it was not freed during
a garbage collection.
525 Bad persistent object
An auto-commit operationduring a garbage collection
detected a non-persistentobject reachable from the
persistent store root. The
type of the object wasoutput into the eventlog.
526 java.lang.Object not found
The class definition for
java.lang.Object cannot befound.
527 java.lang.String not found
The class definition for
java.lang.String cannot be
found.
528Corrupt filesystem. Unrecoverable. All
data will be lost
All data will be lost when
execution continues. Theerror message screen
contains a numberrepresenting an internal
reason for the corruption.
This error is not diagnosedif a COD file was removed
because the JVM must
delete objects that weredefined in the removedCOD file. Thus, this error isnot expected in normaldevice operation. Refer to
the following reasoncodes:
-
8/3/2019 What is - JVM Error Codes
9/15
1. Root array referenceis not a valid arrayreference
2. Root array type isnot Object[]
3. Root array size < 1(i.e., Object[0])
4. Contents of root[0]is not a valid ref
5. Type of root[0] isnot a
LongIntHashtable6. Persistent
segmented array
header contains aninvalid reference7. An entry in a
persistent Object[]contains an invalid
reference8. An Object's type
refers to an unknowncodfile
9. An Object's typedescription in the
codfile doesn't matchthe size in the store
10. A referencetype field in anObject has an invalid
reference in it11. A reference
type field in anobject points to an
object of the wrong
type12. A persistentObject[] is missing
its descriptor13. Object in
persistent store is
not marked aspersistable
-
8/3/2019 What is - JVM Error Codes
10/15
14. Root array issegmented and oneof the segments is
invalid
529Corrupt filesystem. About to attempt
recovery. Some data may be lost
Some data will be lost
when execution continues.The error message screen
contains a numberrepresenting an internal
reason for the corruption.This error is not diagnosed
if a COD file WAS removed
because the VM mustdelete objects that were
defined in the removedCOD file. Thus, this error isnot expected in normaldevice operation. Refer to
the following reasoncodes:
1. Root array referenceis not a valid array
reference2. Root array type is
not Object[]3. Root array size < 1
(i.e., Object[0])4. Contents of root[0]
is not a valid ref5. Type of root[0] is
not aLongIntHashtable
6. Persistentsegmented array
header contains aninvalid reference
7. An entry in apersistent Object[]contains an invalid
reference8. An Object's type
-
8/3/2019 What is - JVM Error Codes
11/15
refers to an unknown
codfile9. An Object's type
description in thecodfile doesn't match
the size in the store10. A reference
type field in anObject has an invalid
reference in it11. A reference
type field in an
object points to an
object of the wrongtype
12. A persistentObject[] is missingits descriptor
13. Object inpersistent store is
not marked aspersistable
14. Root array issegmented and one
of the segments isinvalid
530VM_PREVENT_GC_OVERFLOW:_preventGC overflow
A fixed number of native
objects can be protectedfrom garbage collection.
This error indicates that anative has exceeded the
fixed limit of objects thatcan be protected. If the
device is reset or threadtracebacks are logged, the
name of the actual nativecan be extracted.
531 Flash exhausted
There are certain
operations where the JVMcannot withstand running
out of flash space. In these
circumstances, this error
-
8/3/2019 What is - JVM Error Codes
12/15
will be reported if the JVM
cannot allocate a requiredamount of flash space.
532VM_ASSERTION_FAILED: Assertionfailed
Normally this JVM errorshould not be reportedsince the device is not
shipped with assertionsenabled. The simulator
may report this error indebug mode indicating a
VM assertion was violated.Try typing BKPT to
activate the debugger anddump the native call stack
for forwarding to the VM
team.
533VM_RUN_METHOD: needs
running
This is used internally forECMAScript to call Javamethods.
534VM_FAST_RESET_DISABLED: FastReset Disabled
This is used internally toindicate that fast reset
capability is not available.Often used in platform-
specific code.
535 VM_UNUSED_535: UnusedThis is an unused VMerror.
536VM_FAST_RESET_BAD_INSTANCE: VMInstance Check Failed
This is used internally to
indicate that the VMstructure passed in is at
the wrong address or hasbeen corrupted.
537VM_FAST_RESET_BAD_HEAP: HeapCheck Failed
This is used internally toindicate that the VM heap
has been corrupted or
pointers into the heaphave been corrupted.
538VM_FAST_RESET_BAD_IRAM: IRAM
Check Failed
This is used internally toindicate that the VM IRAM
checks have detectedcorruption of VM data
structures (threads and
-
8/3/2019 What is - JVM Error Codes
13/15
local stacks) that reside in
IRAM.
539 VM_FAST_RESET_NOT_IDLE: Not Idle
This is used internally toindicate that the VM wasnot idle when the resetoccurred and, as such,
cannot continue with a fastreset.
540VM_FAST_RESET_MULTIPLE_RESETS:Multiple Resets
This is used internally to
indicate that the time sincethe last fast reset is less
than a minimum time. Bydisallowing multiple fast
resets in a short amount oftime, this should prevent
fast reset loops.
541
VM_HEAP_COMPACT_INFINITE_LOOP:
infinite loop detected in heap
compaction
The VM detected a
problem in its RAM heapthat indicates its RAM was
corrupted. The problemwas detected by
identifying a possibleinfinite loop during RAM
heap compaction. Abugdisp log and eventlog
should be extractedquickly when the device is
in this condition. Ifpossible, images of RAM
should be saved.
542 Transient memory leak
The JVM detected that
some memory was notfreed, indicating that a
memory leak has occurred.This condition is detected
as early as possible toimprove chances of
isolating the cause.
543VM_FS_MISMATCH: Incompatible Java
filesystem installed
The VM detected that theoperating system binary is
different from theoperating system binary
-
8/3/2019 What is - JVM Error Codes
14/15
used to create the Java file
system. This means thatthe Java native methods
may not be linked properlyand as such, the integrity
of the system cannot beguaranteed. The system
can be recovered by usingthe VM DLFX and DLPS
commands to delete thefixups and persistentstore. This will clear all
data and fixups and let the
filesystem re-link to matchthe new operating system
binary.
Note: The recovery orderis:
1. Delete fixups2. Delete persistent
store
3. Reset device
544
VM_SECTION_MAP_OVERFLOW: a
module references more than 255 othermodules
The VM detected that a
module is trying toreference more than 255
other modules. Extract thefilesystem immediately
when this error isdetected.
545
VM_INCOMPATIBLE_FILESYS: an
incompatible or corrupt filesystem was
found
The VM detected anincompatible or corrupt
filesystem. Extract thefilesystem immediately
when this error isdetected.
546 VM_UNUSED_546: unused
The VM detected that the
RAM image of itsfilesystem is corrupted
(failed CRC check). Betterto reset than to duplicate
-
8/3/2019 What is - JVM Error Codes
15/15
the corruption into flash.
547 VM_UNUSED_547: unusedThis is an unused VM
error.
548 VM_UNUSED_548: unusedThis is an unused VM
error.
549 VM_UNUSED_549: unusedThis is an unused VM
error.