IBM Support

PI78014: DSNTEP2 SQLFORMAT(SQLPL) SQLCODE950 OR SQLCODE084 WITH CONNECT STATEMENT

A fix is available

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • Using SQLFORMAT(SQLPL), DSNTEP2 injects a LF at the end of each
    input record.  For CONNECT TO, that trailing LF is treated as
    part of the location name, which fails with SQLCODE -950.  For a
    simple CONNECT, DSNTEP2 passes the request for PREPARE, which
    fails with SQLCODE -84.
    
    Additional Keywords:
    SQLCODE950
    SQLCODE084
    

Local fix

  • n/a
    

Problem summary

  • ****************************************************************
    * USERS AFFECTED:                                              *
    * All DB2 12 for z/OS users of DSNTEP2 and                     *
    * DSNTEP4.                                                     *
    ****************************************************************
    * PROBLEM DESCRIPTION:                                         *
    * When DSNTEP2 or DSNTEP4 is run with                          *
    * SQLFORMAT(SQLPL):                                            *
    * - Simple CONNECT statements fail with                        *
    *   SQLCODE -084 (UNACCEPTABLE SQL                             *
    *   STATEMENT)                                                 *
    * - CONNECT TO statements fail with                            *
    *   SQLCODE -950 (THE LOCATION NAME                            *
    *   SPECIFIED IN THE CONNECT STATEMENT                         *
    *   IS INVALID OR NOT LISTED IN THE                            *
    *   COMMUNICATIONS DATABASE) even when                         *
    *   a valid, defined location name is                          *
    *   specified.                                                 *
    ****************************************************************
    * RECOMMENDATION:                                              *
    * Apply corrective PTF when available                          *
    ****************************************************************
    DSNTEP2 and DSNTEP4 are DB2 supplied PL/I sample application
    programs that can be used to perform dynamic SQL statement
    processing in the batch mode.  Results are written to the
    SYSPRINT DD.
    
    Before passing an SQL statement to DB2, DSNTEP2 and DSNTEP4
    perform shallow parsing to identify the end of the statement.
    By default, the shallow parser collapses each line of an SQL
    statement into a single line and also discards all SQL comments
    before passing the statement to DB2.  However, when the
    SQLFORMAT(SQLPL) option is in effect, the shallow parser
    retains embedded SQL comments and terminates each line of an
    SQL statement with a line feed character (hex 25) before
    passing the statement to DB2.
    
    Currently, when SQLFORMAT(SQLPL) is in effect, simple connect
    statements fail with SQLCODE -084 and CONNECT TO statements
    fail with SQLCODE -950.  In both cases, the error occurs
    because the CONNECT statement ends with a hanging line-feed
    character that has been appended by DSNTEP2 or DSNTEP4.
    

Problem conclusion

  • In response, the shallow parsing logic of DSNTEP2 and DSNTEP4
    is modified to avoid injecting the superfluous line feed
    character.  Then the CONNECT statements can be processed
    successfully.
    
    This problem was resolved in DB2 10 and DB2 11 by APAR PI75287.
    

Temporary fix

Comments

APAR Information

  • APAR number

    PI78014

  • Reported component name

    DB2 OS/390 & Z/

  • Reported component ID

    5740XYR00

  • Reported release

    C10

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2017-03-10

  • Closed date

    2017-07-10

  • Last modified date

    2017-08-02

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

    PI75287

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

    UI48667

Modules/Macros

  • DSN@EP2L DSNTEP4L DSNTEP2L DSNTEP4  DSNTEP2  DSN@EP4L
    

Fix information

  • Fixed component name

    DB2 OS/390 & Z/

  • Fixed component ID

    5740XYR00

Applicable component levels

  • RC10 PSY UI48667

       UP17/07/26 P F707

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"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"12.0","Edition":"","Line of Business":{"code":"LOB10","label":"Data and AI"}},{"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":"12.0","Edition":"","Line of Business":{"code":"","label":""}}]

Document Information

Modified date:
02 August 2017