IV19615: INCORRECT CONDITIONAL ASSIGNMENT OF LONG CONSTANTS CAUSING ARRAY INDEXOUTOFBOUNDSEXCEPTION ON Z196

Subscribe

You can track all active APARs for this component.

APAR status

  • Closed as program error.

Error description

  • Error Message: An unexpected ArrayIndexOutOfBoundsException was
    observed with the following Java stack trace:
    java.lang.ArrayIndexOutOfBoundsException
    at
    org.apache.derby.impl.store.access.conglomerate.GenericScanContr
    oller.fetchRows(Unknown Source)
    at
    org.apache.derby.impl.store.access.heap.HeapScan.fetchNextGroup(
    Unknown Source)
    at
    org.apache.derby.impl.sql.execute.BulkTableScanResultSet.reloadA
    rray(Unknown Source)
    at
    org.apache.derby.impl.sql.execute.BulkTableScanResultSet.getNext
    RowCore(Unknown Source)
    at
    org.apache.derby.impl.sql.execute.ProjectRestrictResultSet.getNe
    xtRowCore(Unknown Source)
    at
    org.apache.derby.impl.sql.execute.BasicNoPutResultSetImpl.getNex
    tRow(Unknown Source)
    ...
    .
    Stack Trace: N/A
    .
    

Local fix

  • This issue can be avoided using the -Xjit:disableZGryphon
    option. This option may cause a noticeable performance
    degradation.
    

Problem summary

  • The problem occurs in the scenario where an if-statement is
    conditionally guarding a constant assignment to a long variable
    or field.
    i.e.:
     long x;
     if (....)
        x = -1;
    Depending on profiling information, the JIT compiler may
    incorrectly generate an unconditional store for the assignment,
    effectively ignoring the if-condition's value.  This may result
    in an incorrect value being set to the long variable / field.
    The problem will only occur on 64-bit JDKs on Linux on Z or zOS,
    running on z196 hardware.
    

Problem conclusion

  • This defect will be fixed in:
    6.0.1 SR2 FP1
    7.0.0 SR2
    .
    The JVM has been updated to generate the proper conditional
    store instruction.
    

Temporary fix

Comments

APAR Information

  • APAR number

    IV19615

  • Reported component name

    JIT

  • Reported component ID

    620700124

  • Reported release

    260

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2012-04-12

  • Closed date

    2012-05-18

  • Last modified date

    2012-09-07

  • APAR is sysrouted FROM one or more of the following:

  • APAR is sysrouted TO one or more of the following:

Fix information

  • Fixed component name

    JIT

  • Fixed component ID

    620700124

Applicable component levels

  • R260 PSY

       UP



Rate this page:

(0 users)Average rating

Add comments

Document information


More support for:

Runtimes for Java Technology
Just In Time (JIT) Compiler

Software version:

260

Reference #:

IV19615

Modified date:

2012-09-07

Translate my page

Machine Translation

Content navigation