IBM Support

PI79095: DB2 MEMBER BSDS DVIPA UNAVAILABLE AFTER TCPIP STACK LEAVES THE SYSPLEX

A fix is available

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • DB2DDF DB2TCPIP
    See PI79102 for DB2 12 for z/OS.
    A DB2 member's BSDS defined Dvipa becomes unavailable after the
    TCPIP stack leaves the sysplex for some condition
    outside of DB2. DB2 DDF workload may appear stuck and not moving
    or new DDF work will not be accepted.
    No DB2 messages are issued when the TCPIP stack leaves the
    sysplex. However, customer may see TCPIP message EZZ9676E
    when the stack leaves the sysplex and EZD1192I when it rejoins.
    
    NOTE: Customer may see extra listener port once the apar is
    applied (not used for DRDA or SQL)
    ***************************************************************
    Additional Symptoms and Keywords:
     DVIPA Dynamic Virtual Internet Protocol Address
     EZZ9676E MSGEZZ9676E EZD1192I MSGEZD1192I
    EZZ2500I
    

Local fix

  • DB2 DDF for the member on the lpar where the TCPIP stack left
    the sysplex needs to be stopped and started after TCPIP message
    EZD1192I is issued.
    

Problem summary

  • ****************************************************************
    * USERS AFFECTED: All Distributed Data Facility (DDF) users.   *
    *                 Primarily those who have defined, or plan    *
    *                 to define, the group and member IP           *
    *                 addresses in the BSDS.                       *
    ****************************************************************
    * PROBLEM DESCRIPTION: Relative to BSDS defined member IP      *
    *                      addresses, the following conditions     *
    *                      are reported:                           *
    *                      * The IP address remains unavailable    *
    *                        after TCP/IP VIPA Dynamic (DVIPA)     *
    *                        services support has been restored.   *
    *                      * The IP address may remain unusable    *
    *                        and unavailable.                      *
    *                      Additionally, and not necessarily       *
    *                      related to a BSDS defined IP address,   *
    *                      clients may receive intermittent        *
    *                      connection refusals.                    *
    ****************************************************************
    * RECOMMENDATION:                                              *
    ****************************************************************
    When the member IP address (either IPv4 or IPv6) is defined
    to DB2 in the BSDS via the Change Log Inventory utility
    (DSNJU003), DB2 assumes that the defined address is a TCP/IP
    VIPARANGE dynamic virtual IP address (DVIPA).  During DDF
    start-up, when DB2 is establishing its TCP/IP listener
    environment, DB2 issues a request to TCP/IP to create its
    member DVIPA on the system where DB2 is running.  The TCP/IP
    Dynamic VIPA service requires that the TCP/IP address space be
    connected to a Sysplex.
    Two problems may occur:
    * TCP/IP DVIPA services have become unavailable.
      TCP/IP can be forced, via a command or via its own
      determination, to leave the sysplex.  Once this occurs, VIPA
      dynamic services are no longer available on the system and
      all DVIPAs are stopped and removed from the system.  This
      will mean that any client attempting to connect to DB2 by
      using the member IP address will receive connection failures
      as expected.  However, DB2 is currently unaware that, due to
      the stopping of TCP/IP DVIPA services, its BSDS defined
      member address is no longer available.  Therefore, once
      TCP/IP has rejoined the sysplex and DVIPA services have been
      restored, DB2 does not request TCP/IP to recreate its member
      DVIPA (since DB2 was unaware that it became unavailable).
      As a result, any client now attempting to connect to DB2 by
      using the member IP address will continue, incorrectly, to
      receive connection failures.
    * TCP/IP has informed DB2 that the IP address it is attempting
      to use as an IP address is unusable and unavailable.
      During DDF start-up, the request to create its member DVIPA
      could fail with message DSNL512I being issued where the
      message tokens would be socket=DVIPA ACTIVATION(ip-address),
      RETURN CODE=121, and REASON CODE=766C7303.  If the message is
      issued, TCP/IP has indicated to DB2 that the attempt to
      create the address failed because the address is not a
      VIPARANGE DVIPA.
      DB2 ignores the failure and continues with DDF start-up.  The
      rationale for ignoring the failure is that some users may
      have intentionally not defined the BSDS IP address as a
      VIPARANGE DVIPA, but as a usable non-DVIPA IP address.
      However, if, in fact, the IP address is unusable or
      unavailable to the TCP/IP stack, then DDF is (incorrectly
      allowed to be) started with an IP address that cannot be used
      to reach the subsystem.
    Additionally, and not necessarily related to a BSDS defined IP
    address, during a period of a high rate of new connection
    request processing, distributed client applications may receive
    intermittent connection refusals.  The problem occurs because
    the DB2 TCP/IP listener process limits the number of connections
    requests that can be simultaneously received.
    

Problem conclusion

  • Relative to BSDS defined member IP addresses, DB2 has been
    changed as follows:
    * TCP/IP DVIPA services have become unavailable.
      DB2 will now detect when TCP/IP member DVIPA services have
      become unavailable and will issue message DSNL512I with the
      following message tokens:
        socket=ACCEPT(ip-address..0), return-code=3448, and
        reason-code=768F0442
      This indicates that TCP/IP has deleted the IP address, which
      is therefore no longer usable, and hence the DB2 TCP/IP
      listener environment becomes disabled.  The DB2 TCP/IP
      listener process will then attempt to reestablish its
      environment every 30 seconds.  When TCP/IP DVIPA services are
      restored, the TCP/IP listener environment will be re-enabled
      and message DSNL519I or DSNL523I will be issued to indicate
      that TCP/IP DVIPA services have been restored.
    * TCP/IP has informed DB2 that the IP address it is attempting
      to use as an IP address is unusable and unavailable.
      When this occurs, DB2 will issue message DSNL512I with the
      following message tokens:
        socket=BIND(ip-address..0), return-code=1116, and
        reason-code=744C7230
      This version of message DSNL512I will only occur when the IP
      address is defined to DB2 via the BSDS and indicates that the
      DB2 TCP/IP listener is not available.  DDF startup will
      complete, but with no TCP/IP services.
      To correct this error, stop DB2, run the change log inventory
      utility (DSNJU003) with a DDF statement to set a valid and
      usable IP address in the BSDS, and restart DB2.
    Additionally, and not necessarily related to a BSDS defined IP
    address, DB2 will also be changed to set the depth of the TCP/IP
    listener connection queue to be the minimum of the current
    value of MAXDBAT (where a minimum value of 50 will be used)
    and the current value of the TCP/IP parameter SOMAXCONN.  The
    values used will be dependent on when the DB2 TCP/IP listener
    is established.  The listener is established during -START
    DDF processing.  The listener is also established when any
    error preventing its creation gets corrected, e.g. when
    TCP/IP DVIPA services are restored after having been failed.
    
    ---------------------------------------------------------------
    Changes to the DB2 Messages manual are required to describe
    the function provided by this APAR.
    The System Programmer Response section of message DSNL512I is
    being changed to include the description of three new TCP/IP
    socket call error explanations as follows:
    
    * socket=ACCEPT(ip-address..0)
    
      With return-code=3448 and reason-code=768F0442, TCP/IP DVIPA
      services are no longer available.  TCP/IP has deleted the
      IP address and it is no longer usable.  The TCP/IP listener
      is disabled.
    
      The DB2 TCP/IP listener attempts to restart every 30 seconds.
      When TCP/IP DVIPA services are restored, the TCP/IP listener
      restarts and issues message DSNL519I or DSNL523I to indicate
      that TCP/IP DVIPA services are restored.
    
    * socket=BIND(ip-address..0)
    
      With return-code=1116 and reason-code=744C7230, TCP/IP has
      informed DB2 that the ip-address defined in the BSDS is not
      valid or not usable.  The DB2 TCP/IP listener is not
      available, but DDF startup completes.
    
      To correct this error, stop DB2, run the change log
      inventory utility (DSNJU003) DDF statement to set a valid
      and usable IP address in the BSDS, and restart DB2.
    
      With return-code=1116 and reason-code=744C7231, TCP/IP has
      informed DB2 that there are no available ports in the TCP
      ephemeral port range that can be used by DB2 to establish
      its awareness of the availability of DVIPA services.
    
      The DB2 TCP/IP listener continues its setup but DB2 will
      not be aware of the availability of DVIPA services.  To
      correct this error, increase the range of TCP ephemeral
      ports on the TCPCONFIG EPHEMERALPORTS definition in the
      TCP/IP profile configuration.  Refer to the z/OS
      Communications Server IP Configuration Reference for more
      information on the TCPCONFIG TCP/IP profile configuration
      statement.
    
      With return-code=111 and reason-code=744C735A, TCP/IP has
      informed DB2 that DB2 does not have authority to access an
      unreserved TCP protocol port that can be used by DB2 to
      establish its awareness of the availability of DVIPA
      services.
    
      The DB2 TCP/IP listener continues its setup but DB2 will
      not be aware of the availability of DVIPA services.  To
      correct this error, create a PORT UNRSV TCP definition
      allowing DB2 access to unreserved ports in the TCP/IP
      profile configuration.  Refer to the z/OS Communications
      Server IP Configuration Reference for more information on
      the PORT TCP/IP profile configuration statement.
    
      With return-code=111 and reason-code=744C735B, TCP/IP has
      informed DB2 that DB2 does not have SAF permission to access
      an unreserved TCP protocol port that can be used by DB2 to
      establish its awareness of the availability of DVIPA
      services.
    
      The DB2 TCP/IP listener continues its setup but DB2 will
      not be aware of the availability of DVIPA services.  To
      correct this error, grant the DB2 userid read permission
      to resource EZB.PORTACCESS.sysname.tcpipname.safname.
      The TCP/IP profile configuration PORT UNRSV TCP definition
      defines the safname value.  The sysname is the MVS system
      image name and tcpname is the TCP/IP jobname.  Refer to the
      z/OS Communications Server IP Configuration Reference for
      more information on the PORT TCP/IP profile configuration
      statement.
    
    * socket=LISTEN(ip-address..0)
    
      With return-code=111 and reason-code=744C735A, TCP/IP has
      informed DB2 that DB2 does not have authority to access an
      unreserved TCP protocol port that can be used by DB2 to
      establish its awareness of the availability of DVIPA
      services.
    
      The DB2 TCP/IP listener continues its setup but DB2 will
      not be aware of the availability of DVIPA services.  To
      correct this error, create a PORT UNRSV TCP definition
      allowing DB2 access to unreserved ports in the TCP/IP
      profile configuration.  Refer to the z/OS Communications
      Server IP Configuration Reference for more information on
      the PORT TCP/IP profile configuration statement.
    
      With return-code=111 and reason-code=744C735B, TCP/IP has
      informed DB2 that DB2 does not have SAF permission to access
      an unreserved TCP protocol port that can be used by DB2 to
      establish its awareness of the availability of DVIPA
      services.
    
      The DB2 TCP/IP listener continues its setup but DB2 will
      not be aware of the availability of DVIPA services.  To
      correct this error, grant the DB2 userid read permission
      to resource EZB.PORTACCESS.sysname.tcpipname.safname.
      The TCP/IP profile configuration PORT UNRSV TCP definition
      defines the safname value.  The sysname is the MVS system
      image name and tcpname is the TCP/IP jobname.  Refer to the
      z/OS Communications Server IP Configuration Reference for
      more information on the PORT TCP/IP profile configuration
      statement.
    
    The product documentation contained in the DB2 for z/OS
    Knowledge Center will be updated at a later date.
    

Temporary fix

Comments

APAR Information

  • APAR number

    PI79095

  • Reported component name

    DB2 OS/390 & Z/

  • Reported component ID

    5740XYR00

  • Reported release

    B10

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2017-03-30

  • Closed date

    2017-06-14

  • Last modified date

    2021-05-25

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

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

    PI79102 UI48032

Modules/Macros

  •    DSNLILNR
    

Fix information

  • Fixed component name

    DB2 OS/390 & Z/

  • Fixed component ID

    5740XYR00

Applicable component levels

  • RB10 PSY UI48032

       UP17/06/29 P F706

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.

[{"Line of Business":{"code":"LOB10","label":"Data and AI"},"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSEPEK","label":"Db2 for z\/OS"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"11.0"}]

Document Information

Modified date:
26 May 2021