what is - jvm error codes

Upload: kate-guerrero

Post on 06-Apr-2018

226 views

Category:

Documents


0 download

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.