IBM Support

PI33453: CHUNKED REQUEST MIGHT FAIL TO RECEIVE ALL RESPONSE CAUSED BY DELAYED LAST CRLF.

Subscribe

You can track all active APARs for this component.

APAR status

  • Closed as program error.

Error description

  • The request with the chunked transfer encoding should end
    with CRLF after the last-chunk (RFC 2616). If the last CRLF is
    delayed and arrives at the Application Server while it is
    sending the response back to the client, the TCP session will be
    disconnected and the client cannot receive all responses.
    

Local fix

  • Use the request with non-chunked transfer encoding at the client
    side. The HTTP transport policy "Enable chunked transfer
    encoding" sets to false if the client is a Web Service Requester
    on WebSphere Application Server.
    

Problem summary

  • ****************************************************************
    * USERS AFFECTED:  IBM WebSphere Application Server Version    *
    *                  7.0, 8.0, and 8.5.5 users                   *
    ****************************************************************
    * PROBLEM DESCRIPTION: For chunked encoded requests, if data   *
    *                      is sent after the end of body           *
    *                      sequence 'CRLF 0 CRLF' is read, the     *
    *                      connection is closed immediately with   *
    *                      an RST packet.                          *
    ****************************************************************
    * RECOMMENDATION:                                              *
    ****************************************************************
    According to section 3.6.1 of the HTTP 1.1 specifications
    document, RFC-2616, "chunked encoding is ended by any chunk
    whose size is zero, followed by the trailer, which is
    terminated by an empty line". The RFC also specifies that
    the trailer is optional. That is, the end of message is
    considered to be the end of body, denoted by 'CRLF 0 CRLF'
    followed by an OPTIONAL trailer (whose end is denoted by
    'CRLF'). However, if the end of body was reached and no further
    data had been provided at the moment, the HTTP Channel would
    begin servicing the response. This causes problems if
    additional data arrives for this same connection. In
    persistent connections, the additional data would be
    wrongfully recognized as another request; whereas in
    non-persistent connections, the transmission would be abruptly
    terminated with an RST packet if the peer had not finished
    reading by this time.
    

Problem conclusion

Temporary fix

Comments

APAR Information

  • APAR number

    PI33453

  • Reported component name

    WEBS APP SERV N

  • Reported component ID

    5724H8800

  • Reported release

    800

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2015-01-26

  • Closed date

    2015-03-03

  • Last modified date

    2015-03-03

  • 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

    WEBS APP SERV N

  • Fixed component ID

    5724H8800

Applicable component levels

  • R700 PSY

       UP

  • R800 PSY

       UP

  • R850 PSY

       UP



Document information

More support for: WebSphere Application Server
General

Software version: 8.0

Reference #: PI33453

Modified date: 03 March 2015