IBM Support

IV77500: CLASS SERIALIZATION INCONSISTENCY ACROSS JVMS DUE TO INCORRECT R ETURN VALUE FROM CLASS.GETMODIFIERS

Subscribe to this APAR

By subscribing, you receive periodic emails alerting you to the status of the APAR, along with a link to the fix after it becomes available. You can track this item individually or track all items by product.

Notify me when this APAR changes.

Notify me when an APAR for this component changes.

APAR status

  • Closed as program error.

Error description

  • Error Message: Class.getModifiers returned incorrect modifiers
    for anonymous inner classes. This caused cross JVM class
    serialization to fail.
    .
    Stack Trace: java.io.InvalidClassException:
    scala.reflect.ClassTag$$anon$1; local class incompatible: stream
    classdesc serialVersionUID = -4937928798201944954, local class
    serialVersionUID = -8102093212602380348
        at java.io.ObjectStreamClass.initNonProxy
        at java.io.ObjectInputStream.readNonProxyDesc
        at java.io.ObjectInputStream.readClassDesc
        at java.io.ObjectInputStream.readOrdinaryObject
        at java.io.ObjectInputStream.readObject0
        at java.io.ObjectInputStream.defaultReadFields
        at java.io.ObjectInputStream.readSerialData
        at java.io.ObjectInputStream.readOrdinaryObject
        at java.io.ObjectInputStream.readObject0
        at java.io.ObjectInputStream.defaultReadFields
        at java.io.ObjectInputStream.readSerialData
        at java.io.ObjectInputStream.readOrdinaryObject
        at java.io.ObjectInputStream.readObject0
        at java.io.ObjectInputStream.readObject
    .
    

Local fix

Problem summary

  • The problem is caused by anonymous inner classes not being
    recognized as inner classes, which caused Class.getModifiers to
    return incorrect modifiers.
    

Problem conclusion

  • The JVM has been updated to treat anonymous inner classes as
    inner classes and Class.getModifiers returns the correct
    modifiers in all cases.
    .
    This APAR will be fixed in the following Java Releases:
       7 R1 SR3 FP20  (7.1.3.20)
       8    SR2       (8.0.2.0)
       7    SR9 FP20  (7.0.9.20)
    .
    Contact your IBM Product's Service Team for these Service
    Refreshes and Fix Packs.
    For those running stand-alone, information about the available
    Service Refreshes and Fix Packs can be found at:
               https://www.ibm.com/developerworks/java/jdk/
    

Temporary fix

Comments

APAR Information

  • APAR number

    IV77500

  • Reported component name

    J9 COMMON CODE

  • Reported component ID

    620700127

  • Reported release

    270

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2015-09-25

  • Closed date

    2015-09-25

  • Last modified date

    2015-09-25

  • 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

    J9 COMMON CODE

  • Fixed component ID

    620700127

Applicable component levels

  • R270 PSY

       UP

  • R260 PSY

       UP



Document information

More support for: Runtimes for Java Technology
Virtual Machine

Software version: 270

Reference #: IV77500

Modified date: 25 September 2015