JR44052: WSWS3227E: ERROR: EXCEPTION: JAVA.IO.IOEXCEPTION: INPUTSTREAM CLOSED EXCEPTION DURING STRESS TEST

Subscribe

You can track all active APARs for this component.

APAR status

  • Closed as program error.

Error description

  • internalExcep E
    com.ibm.ws.webservices.engine.InternalException
    <init> WSWS3227E:  Error: Exception: java.io.IOException:
    InputStream closed
    
    can occur during stress test
    

Local fix

  • N/A
    

Problem summary

  • ****************************************************************
    * USERS AFFECTED:  WebSphere Process Server users              *
    ****************************************************************
    * PROBLEM DESCRIPTION: WSWS3227E can occur during stress       *
    *                      test with JMS binding                   *
    ****************************************************************
    * RECOMMENDATION:                                              *
    ****************************************************************
    While using JMS binding, if there are too many concurrent
    users request at the same time, the WSWS3227E Error: Exception:
    java.io.IOException: InputStream closed may occur.
    Here is the stack trace in the server log --
    [4/3/12 13:22:56:031 CEST] 00000045 InternalExcep E
    com.ibm.ws.webservices.engine.InternalException <init>
    WSWS3227E:
    Error: Exception:
    java.io.IOException: InputStream closed
    at
    com.ibm.ws.sca.internal.jms.util.BytesMessageInputStream.checkCl
    osed(Byt
    esMessageInputStream.java:240)
    at
    com.ibm.ws.sca.internal.jms.util.BytesMessageInputStream.availab
    le(Bytes
    MessageInputStream.java:75)
    at
    java.io.FilterInputStream.available(FilterInputStream.java:153)
    at com.ibm.ws.webservices.utils.BAIS.create(BAIS.java:68)
    at
    com.ibm.ws.webservices.utils.WebServicesInputSource.getBAISConte
    nt(WebSe
    rvicesInputSource.java:744)
    at
    com.ibm.ws.webservices.utils.WebServicesInputSource.getByteArray
    Content(
    WebServicesInputSource.java:710)
    at
    com.ibm.ws.webservices.utils.WebServicesInputSource.getStringCon
    tent(Web
    ServicesInputSource.java:674)
    at
    com.ibm.ws.webservices.utils.WebServicesInputSource.getString(We
    bService
    sInputSource.java:425)
    at
    com.ibm.ws.webservices.engine.SOAPPart._getSOAPEnvelope(SOAPPart
    .java:10
    90)
    at
    com.ibm.ws.webservices.engine.SOAPPart.getAsSOAPEnvelope(SOAPPar
    t.java:6
    28)
    at
    com.ibm.ws.webservices.engine.SOAPPart.getEnvelope(SOAPPart.java
    :656)
    at
    com.ibm.websphere.webservices.soap.IBMSOAPMessage.getSOAPBody(IB
    MSOAPMes
    sage.java:53)
    at
    com.ibm.wbiserver.datahandler.SOAPDataHandler.readObject(SOAPDat
    aHandler
    .java:708)
    at
    com.ibm.wbiserver.datahandler.SOAPDataHandler.transform(SOAPData
    Handler.
    java:126)
    at
    com.ibm.wsspi.sca.bindingcore.faults.FaultService.processBusines
    sFaults(
    FaultService.java:392)
    at
    com.ibm.wsspi.sca.bindingcore.faults.FaultService.invokeFaultHan
    dling(Fa
    ultService.java:129)
    at
    com.ibm.ws.sca.internal.jms.AbstractJMSAsyncResponseListenerImpl
    .buildRe
    sponse(AbstractJMSAsyncResponseListenerImpl.java:571)
    at
    com.ibm.ws.sca.internal.jms.AbstractJMSAsyncResponseListenerImpl
    .onMessa
    ge(AbstractJMSAsyncResponseListenerImpl.java:301)
    at sun.reflect.GeneratedMethodAccessor114.invoke(Unknown
    Source)
    at
    sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethod
    Accessor
    Impl.java:37)
    at java.lang.reflect.Method.invoke(Method.java:611)
    at
    com.ibm.ws.container.binding.jms.TransactionalMessageEndpoint.in
    vokeBusi
    nessMethod(TransactionalMessageEndpoint.java:381)
    at
    com.ibm.ws.container.binding.jms.TransactionalMessageEndpoint.in
    voke(Tra
    nsactionalMessageEndpoint.java:458)
    at $Proxy62.onMessage(Unknown Source)
    at
    com.ibm.ws.sib.api.jmsra.impl.JmsJcaEndpointInvokerImpl.invokeEn
    dpoint(J
    msJcaEndpointInvokerImpl.java:233)
    at
    com.ibm.ws.sib.ra.inbound.impl.SibRaDispatcher.dispatch(SibRaDis
    patcher.
    java:900)
    at
    com.ibm.ws.sib.ra.inbound.impl.SibRaSingleProcessListener$SibRaW
    ork.run(
    SibRaSingleProcessListener.java:552)
    at com.ibm.ejs.j2c.work.WorkProxy.run(WorkProxy.java:399)
    at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1604)
    

Problem conclusion

  • It is a thread safety issue in JMS binding code, because the
    internal variable "responseBindingContext" is not thread safe
    and may be corrupted among multiple threads. Code added to
    address thread safety.
    

Temporary fix

Comments

APAR Information

  • APAR number

    JR44052

  • Reported component name

    WEB PROC SERVER

  • Reported component ID

    5724L0100

  • Reported release

    700

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2012-09-12

  • Closed date

    2012-11-28

  • Last modified date

    2012-12-12

  • 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

    WEB PROC SERVER

  • Fixed component ID

    5724L0100

Applicable component levels

  • R700 PSY

       UP



Rate this page:

(0 users)Average rating

Add comments

Document information


More support for:

WebSphere Process Server

Software version:

7.0

Reference #:

JR44052

Modified date:

2012-12-12

Translate my page

Machine Translation

Content navigation