IBM Support

PI95904: AUTHORIZATION ERROR MESSAGE FOR 00F30034 IS RETURNED IN INCORRECT ENCODING

A fix is available

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • When CREATE THREAD fails with 00F30034, SQLGetDiagRec() does not
    return the SQLState and MessageText arguments in correct
    encoding.  In the failing scenario, the application sets
    CURRENTAPPENSCH=ASCII, but the arguments are returned in EBCDIC.
    

Local fix

Problem summary

  • ****************************************************************
    * USERS AFFECTED: All users of Db2 11 for z/OS ODBC/CLI        *
    *                 driver                                       *
    ****************************************************************
    * PROBLEM DESCRIPTION: Error message text may be returned in   *
    *                      incorrect encoding when the INI         *
    *                      keyword CURRENTAPPENSCH is not set to   *
    *                      EBCDIC or an EBCDIC CCSID               *
    ****************************************************************
    * RECOMMENDATION:                                              *
    ****************************************************************
    Before an ODBC application establishes a connection to Db2,
    if an error occurs, the ODBC driver may throw error messages
    in EBCDIC encoding even though the application encoding is
    not EBCDIC.
    
    For example,
    An ODBC application fails to run when the authorization ID
    associated with the user is not granted execution privilege
    to the ODBC plan. SQLGetDiagRec() returns the error
    message text described as follows:
    
    {DB2 FOR OS/390}{ODBC DRIVER}  SQLSTATE=58004  ERRLOC=2:56:10
      CAF "OPEN" failed using DB2 system:DB2A and PLAN:DSNACLI
      RC=08 and REASON=00f30034
    
    If the ODBC application sets INI keyword CURRENTAPPENSCH=ASCII
    and above situation happens, the error message text returned by
    SQLGetDiagRec() is still in EBCDIC encoding instead of in ASCII
    encoding.
    

Problem conclusion

  • Code has been changed to return the error message text in the
    correct encoding.
    

Temporary fix

Comments

APAR Information

  • APAR number

    PI95904

  • Reported component name

    DB2 ODBC/JDBC/S

  • Reported component ID

    5740XYR02

  • Reported release

    B17

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2018-03-28

  • Closed date

    2019-06-25

  • Last modified date

    2019-08-01

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

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

    UI63886

Modules/Macros

  •    DSNAOCLI DSNAOC0J DSNAOC02 DSNAOC1Q DSNAOG0J
    DSNAOG02 DSNAOG1Q DSNAOSDK
    

Fix information

  • Fixed component name

    DB2 ODBC/JDBC/S

  • Fixed component ID

    5740XYR02

Applicable component levels

  • RB17 PSY UI63886

       UP19/07/11 P F907

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":"B17"}]

Document Information

Modified date:
05 March 2021