IBM Support

PI11636: DATABASEMETADATA.GETDATABASEPRODUCTNAME MAY RETURN UNPREDICTABLERESULTS FOR THE DB2 Z/OS PRODUCT NAME VALU 14/02/12 PTF PECHANGE

A fix is available

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • DB2DDF DB2DRDA defect pi11636 dpi11636
    After applying DB2 for z/os apar PM99492, users of the
    JCC DatabaseMetaData.getDatabaseProductName method may get
    unpredictable results. Prior to applying PM99492, JCC
    DatabaseMetaData.getDatabaseProductName method would return a
    value of "DB2" for a DB2 for z/os server. After PM99492 is
    applied, the value being returned by the JCC method for a DB2
    for z/os server may be unpredictable
    due to changes in the DB2 z/os server name.
    
    
    Values that may be seen after the apar is applied are:
    DB2 for DB2 UDB for z/OS
     QDB2 for DB2 UDB for z/OS
    DB2 for DB2 for UDB for z/os VUE
     QDB2 for DB2 for UDB for z/os
    **************************************************************
    Additional Symptoms and Keywords:
     DatabaseMetaDatagetDatabaseProductName metadata
     SQLCODE302  JDBC / JCC
    

Local fix

  • no local workaround/fix
    

Problem summary

  • ****************************************************************
    * USERS AFFECTED: All Distributed Data Facility (DDF) users.   *
    ****************************************************************
    * PROBLEM DESCRIPTION: Unpredictable failure symptoms may      *
    *                      occur in remote applications due to a   *
    *                      new DRDA Server Class Name (SRVCLSNM)   *
    *                      value being returned after APAR         *
    *                      PM99492.                                *
    ****************************************************************
    * RECOMMENDATION:                                              *
    ****************************************************************
    For the benefit of DB2 for z/OS Value Unit Edition (VUE)
    environments, APAR PM99492 made changes to return a new DRDA
    SRVCLSNM (SeRVer CLaSs NaMe) signature value to remote DRDA
    client environments because it was necessary for DB2 to
    identify itself as VUE enabled.
    This new value is only being returned to remote DRDA client
    environments (such as JCC) that are known to tolerate new
    values and as a result the PM99492 change also included logic
    to return another new, more descriptive, value even when DB2
    is *not* VUE enabled.
    Unknown to DB2, remote applications may also be exposed to the
    value and hence the new values have the potential to impact
    the behavior and operational characteristics of remote
    applications.
      Example: Remote applications can be aware of the signature
        value via the DatabaseMetaData.getDatabaseProductName
        method.
    Remote application failures typically occur due to their
    inability to identify a DB2 for z/OS server as a result of the
    signature change.  Potential symptoms that may be observed by
    remote applications, as a result of the new DB2 signature
    values, are unpredictable.
    

Problem conclusion

  • In order to eliminate the potential impact to remote JCC based
    application environments, DB2 has been changed to no longer
    return a new signature value (and revert to returning the prior
    legacy signature value, "QDB2"), even relative to Value Unit
    Edition (VUE) enabled environments.
    Users are advised that Product ID information is more suitable
    for the purpose of identifying a database.  The Product ID
    information is more appropriate since it obeys a strict and
    predictable format whereas the signature value is a free-form
    string that may be subject to change.  Any utilization of the
    signature value should be closely scrutinized and it's
    recommended that its use be eliminated where possible.
    Example: If the DatabaseMetaData.getDatabaseProductName method
      is used by applications to determine the identity of the
      server, then it's recommended that applications use the
      DatabaseMetaData.getDatabaseProductVersion method instead.
      In fact, documentation changes are being made to clarify
      this usability concern.
      o DB2 for z/OS :
        Application Programming Guide and Reference for Java
      o Data Server Drivers (DB2/LUW):
        Developing Java Applications
    

Temporary fix

Comments

APAR Information

  • APAR number

    PI11636

  • Reported component name

    DB2 OS/390 & Z/

  • Reported component ID

    5740XYR00

  • Reported release

    A10

  • Status

    CLOSED PER

  • PE

    YesPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2014-02-12

  • Closed date

    2014-02-28

  • Last modified date

    2014-04-02

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

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

    UI15610 UI15611 UI15612

Modules/Macros

  •    DSNLTEXC
    

Fix information

  • Fixed component name

    DB2 OS/390 & Z/

  • Fixed component ID

    5740XYR00

Applicable component levels

  • RA10 PSY UI15610

       UP14/03/15 P F403 Ø

  • RB10 PSY UI15611

       UP14/03/15 P F403 Ø

  • R910 PSY UI15612

       UP14/03/15 P F403 Ø

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":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSEPEK","label":"DB2 for z\/OS"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"A10","Line of Business":{"code":"LOB10","label":"Data and AI"}}]

Document Information

Modified date:
15 March 2024