IBM Support

PQ68544: TCPIP CICS LISTENER LOOPS ON RECEIVE WHEN PEEKING DATA WHEN LESSDATA SENT THEN CONFIGURED OR CONNECTION CLOSED BY CLIENT.

A fix is available

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • If the TCPIP CICS Listener is configured to receive a certain
    amount of data it is to peek when less is sent by the client
    the Listener will loop on its Receive Peek option. If the client
    connection is closed the loop persists since the receive never
    completes; so the lesser amount of data is not really read. Thus
    a receive of zero length is never seen.
    

Local fix

Problem summary

  • ****************************************************************
    * USERS AFFECTED: All users of the IBM Communications Server   *
    *                 for z/OS Version 1 Releases 2 & 4 IP:        *
    *                 CICS Sockets                                 *
    ****************************************************************
    * PROBLEM DESCRIPTION: High CPU utilization when a client      *
    *                      sends incomplete data to an enhanced    *
    *                      CICS listener that is configured with   *
    *                      the PEEKDAT=YES option                  *
    ****************************************************************
    * RECOMMENDATION:                                              *
    ****************************************************************
    An enhanced CICS listener has been configured with YES specified
    as the PEEKDATa parameter and a positive value specified as the
    MSGLENth parameter.
    A remote client connects to the listener and sends data whose
    length is less than the MSGLEN value.  Since PEEKDAT=YES, the
    listener receives the data using the PEEK option.  This means
    that the data remains queued waiting to be received.  The
    listener sees that the data length is less than MSGLEN and
    therefore immediately issues another RECV (with the PEEK option)
    to get the remainder of the data.  Since the same data is still
    waiting to be received (because the PEEK option was used on the
    previous RECV), the RECV completes immediately with the same
    result.  Hence, the listener loops issuing the RECV over and
    over until the client sends in the remainder of the data.  If
    the client closes its socket before sending the remainder of the
    data, then the loop continues indefinitely.
    +-------------------------------------------------------------+
    + Please check our Communications Server for OS/390 homepages +
    + for common networking tips and fixes.  The URL for these    +
    + homepages can be found in Informational APAR II11334.       +
    +-------------------------------------------------------------+
    

Problem conclusion

  • The CICS Sockets listener program, EZACIC02, has been amended to
    properly manage the situation where a client sends incomplete
    data to an enhanced listener that is configured with the
    PEEKDAT=YES option.  EZACIC02 has also been amended to detect
    when the client closes its socket.
    
    The following change to message EZY1301E needs to be added to
    these manuals:
    
    z/OS IBM Communications Server
    IP CICS Sockets Guide
    Version 1 Release 2
    Document Number SC31-8807-00
    
    z/OS IBM Communications Server
    IP Messages:
    Volume 3 (EZY)
    Version 1 Release 2
    Document Number SC31-8785-01
    
    z/OS IBM Communications Server
    IP CICS Sockets Guide
    Version 1 Release 4
    Document Number SC31-8807-01
    
    z/OS IBM Communications Server
    IP Messages:
    Volume 3 (EZY)
    Version 1 Release 4
    Document Number SC31-8785-02
    
    EZY1301E mm/dd/yy hh:mm:ss CONNECTION CLOSED BY CLIENT
    TRANSACTION= transactionid PARTNER INET ADDR= ipaddr
    PORT= port
    
    EXPLANATION: A remote client connected to the CICS Listener but
    then closed the connection before sending the entire amount of
    data required by the Listener as determined by the MINMSGL
    standard Listener configuration parameter or the MSGLEN
    enhanced Listener configuration parameter.
    
    mm/dd/yy is the date (month/day/year) of the message.
    
    hh:mm:ss is the time (hours:minutes:seconds) of the message.
    
    transactionid is the transaction name of the CICS Listener.
    
    ipaddr is the internet address of the remote client.
    
    port is the port number of the remote client.
    
    SYSTEM ACTION: Listener transaction transactionid continues.
    
    USER OR OPERATOR RESPONSE: Correct the client program.
    
    SYSTEM PROGRAMMER RESPONSE: None.
    
    SOURCE DATA SET: EZACIC02
    
    PROCEDURE NAME: LISTENER
    
    
    * Cross Reference between External and Internal Names
    

Temporary fix

Comments

APAR Information

  • APAR number

    PQ68544

  • Reported component name

    TCP/IP V3 MVS

  • Reported component ID

    5655HAL00

  • Reported release

    120

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2002-11-25

  • Closed date

    2002-12-19

  • Last modified date

    2003-02-05

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

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

    UQ72818 UQ72819

Modules/Macros

  • EZACICME EZACIC02
    

Publications Referenced
SC31878502SC31880701SC31878501SC31880700 

Fix information

  • Fixed component name

    TCP/IP V3 MVS

  • Fixed component ID

    5655HAL00

Applicable component levels

  • R120 PSY UQ72818

       UP03/01/10 P F301

  • R140 PSY UQ72819

       UP03/01/10 P F301

Fix is available

  • Select the PTF appropriate for your component level. You will be required to sign in. Distribution on physical media is not available in all countries.

[{"Business Unit":{"code":"BU054","label":"Systems w\/TPS"},"Product":{"code":"SG19M","label":"APARs - z\/OS environment"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"120","Edition":"","Line of Business":{"code":"","label":""}},{"Business Unit":{"code":"BU054","label":"Systems w\/TPS"},"Product":{"code":"SSCY4DZ","label":"DO NOT USE"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"120","Edition":"","Line of Business":{"code":"","label":""}}]

Document Information

Modified date:
05 February 2003