IBM Support

PK99216: WAS throws java.lang.ArrayIndexOutOfBoundsException exceptions o n EGL app.

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • EGL app randomly throws ArrayIndexOutOfBoundsExceptions at runti
    me.
    
    
    10/16/09 10:18:22:951 EDT] 000000c5 SessionContex E   Exception
    is: java.lang.ArrayIndexOutOfBoundsException: 0
     at com.ibm.javart.arrays.StringArray.writeObject(StringArray.ja
    va:549)
     at sun.reflect.GeneratedMethodAccessor77.invoke(Unknown Source)
     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMe
    thodAccessorImpl.java(Compiled Code))
     at java.lang.reflect.Method.invoke(Method.java(Compiled Code))
     at java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClas
    s.java(Compiled Code))
     at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStrea
    m.java(Compiled Code))
     at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputS
    tream.java(Compiled Code))
     at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.j
    ava(Compiled Code))
     at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputSt
    ream.java(Compiled Code))
     at java.io.ObjectOutputStream.defaultWriteObject(ObjectOutputSt
    ream.java(Compiled Code))
     at com.ibm.javart.ref.StringArrayRef.writeObject(StringArrayRef
    .java:227)
     at sun.reflect.GeneratedMethodAccessor76.invoke(Unknown Source)
     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMe
    thodAccessorImpl.java(Compiled Code))
     at java.lang.reflect.Method.invoke(Method.java(Compiled Code))
     at java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClas
    s.java(Compiled Code))
     at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStrea
    m.java(Compiled Code))
     at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputS
    tream.java(Compiled Code))
     at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.j
    ava(Compiled Code))
     at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.ja
    va(Inlined Compiled Code))
     at java.util.ArrayList.writeObject(ArrayList.java(Compiled Code
    ))
     at sun.reflect.GeneratedMethodAccessor52.invoke(Unknown Source)
     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMe
    thodAccessorImpl.java(Compiled Code))
     at java.lang.reflect.Method.invoke(Method.java(Compiled Code))
     at java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClas
    s.java(Compiled Code))
     at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStrea
    m.java(Compiled Code))
     at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputS
    tream.java(Compiled Code))
     at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.j
    ava(Compiled Code))
     at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.ja
    va(Compiled Code))
     at com.ibm.javart.Container.writeObject(Container.java:606)
     at sun.reflect.GeneratedMethodAccessor55.invoke(Unknown Source)
     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMe
    thodAccessorImpl.java(Compiled Code))
     at java.lang.reflect.Method.invoke(Method.java(Compiled Code))
     at java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClas
    s.java(Compiled Code))
     at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStrea
    m.java(Compiled Code))
     at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputS
    tream.java(Compiled Code))
     at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.j
    ava(Compiled Code))
     at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.ja
    va(Inlined Compiled Code))
     at java.util.Hashtable.writeObject(Hashtable.java(Compiled Code
    ))
     at sun.reflect.GeneratedMethodAccessor61.invoke(Unknown Source)
     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMe
    thodAccessorImpl.java(Compiled Code))
     at java.lang.reflect.Method.invoke(Method.java(Compiled Code))
     at java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClas
    s.java(Compiled Code))
     at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStrea
    m.java(Compiled Code))
     at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputS
    tream.java(Compiled Code))
     at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.j
    ava(Compiled Code))
     at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.ja
    va(Compiled Code))
     at com.ibm.ws.webcontainer.httpsession.SessionContextMBeanAdapt
    er.getSessionsInfo(SessionContextMBeanAdapter.java(Compiled Code
    ))
     at com.ibm.ws.webcontainer.httpsession.SessionTrackingPMIApplic
    ationData$1.getRuntimeInfo(SessionTrackingPMIApplicationData.jav
    a(Inlined Compiled Code))
     at com.ibm.ws.pmi.server.modules.ServletSessionsModule$SessionO
    bjSize.updateStatistic(ServletSessionsModule.java(Compiled Code)
    )
     at com.ibm.ws.pmi.server.data.SpdStatExternal.updateExternal(Sp
    dStatExternal.java(Compiled Code))
     at com.ibm.websphere.pmi.server.PmiAbstractModule.update(PmiAbs
    tractModule.java(Compiled Code))
     at com.ibm.websphere.pmi.server.PmiAbstractModule.updateStatist
    ics(PmiAbstractModule.java(Compiled Code))
     at com.ibm.ws.pmi.server.ModuleItem.updateStatisticsForStatsTre
    e(ModuleItem.java(Compiled Code))
     at com.ibm.ws.pmi.server.ModuleItem.updateStatisticsForStatsTre
    e(ModuleItem.java(Compiled Code))
     at com.ibm.ws.pmi.server.ModuleItem.getStats(ModuleItem.java(Co
    mpiled Code))
     at com.ibm.ws.pmi.server.PmiRegistry.getStats(PmiRegistry.java(
    Inlined Compiled Code))
     at com.ibm.ws.pmi.server.PmiRegistry.get(PmiRegistry.java(Inlin
    ed Compiled Code))
    

Local fix

Problem summary

  • The db connection is Java Runtime is not thread-safe.
    

Problem conclusion

  • Using ThreadLocal to ensure the DBConnection thread-safe.
    

Temporary fix

Comments

APAR Information

  • APAR number

    PK99216

  • Reported component name

    RATL BUS DEV

  • Reported component ID

    5724S5000

  • Reported release

    700

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2009-10-21

  • Closed date

    2010-02-11

  • Last modified date

    2010-02-11

  • 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

    RATL BUS DEV

  • Fixed component ID

    5724S5000

Applicable component levels

  • R700 PSN

       UP

[{"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SSMQ79","label":"Rational Business Developer"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"7.0","Edition":"","Line of Business":{"code":"LOB35","label":"Mainframe SW"}}]

Document Information

Modified date:
11 February 2010