IBM Support

PI41559: UNEXPECTED TABLE NAME SPECIFIED IN HPU GENERATED LOAD STATEMENT USING UNLOAD PLUS SYNTAX

A fix is available

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • The table name specified in the LOAD statement generated by DB2
    HPU when the unload of a view is requested via an Unload Plus
    syntax is not the same as when the LOAD statement is generated
    by Unload Plus itself.
    
    For instance, DB2 HPU uses the name of the unloaded view as the
    target table name while Unload Plus uses the table name involved
    in the view definition.
    
    More generally speaking, DB2 HPU should generate a LOAD
    statement according to the following rules.
    
    If the unload is processed in native mode, the table name is
    specified as well as the related column names.
    
    Otherwise, user.$TABLE1 is used as table name and the name of
    the target table (as defined by the SELECT statement thus from
    the view if applicable).
    
    PB12781
    

Local fix

Problem summary

  • ****************************************************************
    * USERS AFFECTED: Users of DB2 High Performance Unload.        *
    ****************************************************************
    * PROBLEM DESCRIPTION: The table name specified in the LOAD    *
    *                      statement generated by DB2 HPU when     *
    *                      the unload of a view is requested via   *
    *                      an Unload Plus syntax is not the same   *
    *                      as when the LOAD statement is           *
    *                      generated by Unload Plus itself.        *
    *                      For instance, DB2 HPU uses the name of  *
    *                      the unloaded view as the target table   *
    *                      name while Unload Plus uses the table   *
    *                      name involved in the view definition.   *
    *                      More generally speaking, DB2 HPU        *
    *                      should generate a LOAD statement        *
    *                      according to the following rules.       *
    *                      If the unload is processed in native    *
    *                      mode, the table name is specified as    *
    *                      well as the related column names.       *
    *                      Otherwise, user.$TABLE1 is used as      *
    *                      table name and the name of the target   *
    *                      table (as defined by the SELECT         *
    *                      statement thus from the view if         *
    *                      applicable ?).                          *
    *                      Here are some experimental/empirical    *
    *                      specifications                          *
    *                      -------------------------------------   *
    *                      1.       For a view that is supported,  *
    *                      what does the LOAD SYSIN contain when   *
    *                      running in DIRECT NO? Is it the table   *
    *                      name or the view name? Same question    *
    *                      for the column names if they have been  *
    *                      changed in the view compared to the     *
    *                      columns in the table.                   *
    *                      (1) If the DIRECT NO is specified or    *
    *                      used because of DIRECT AUTO then        *
    *                      tablename is always  userid. TABLE1     *
    *                      (e.g. "INTO TABLE DBBK.$TABLE1" ).      *
    *                      This is totally independant if view is  *
    *                      supported or not or if where clause is  *
    *                      used or not                             *
    *                      2. For a view that is not supported     *
    *                      because it contains a WHERE clause,     *
    *                      and would be supported if it were       *
    *                      created without this where clause,      *
    *                      does the LOAD SYSIN contain the table   *
    *                      name or something else?                 *
    *                      (2) If DIRECT YES is used               *
    *                      (a) tablename is always generated for   *
    *                      LOAD SYSIN  as original tablename and   *
    *                      not the viewname, if tablename could    *
    *                      definetly be specified                  *
    *                      (b) if unique tablename could not be    *
    *                      identified  then tablename will be      *
    *                      generated as   userid. TABLE1           *
    *                      (c) if columnname is changed within     *
    *                      the viewdefinition or during the        *
    *                      SELECT in the UNLOAD (e.g. Select       *
    *                      ASVID, DDSTATUS as OBELIX, QMNAME?.)    *
    *                      then LOAD SYSIN will use original       *
    *                      tablename   AND  original  table        *
    *                      columnname                              *
    *                      3. For a view that is not supported     *
    *                      for other reasons (join, union,         *
    *                      calculated columns, etc.) processed     *
    *                      either in DIRECT AUTO or DIRECT NO,     *
    *                      what does the LOAD SYSIN contain in     *
    *                      the LOAD statement for the table and    *
    *                      the columns names ?                     *
    *                      (3) The question related to the target  *
    *                      date is not so easily to answer,        *
    *                      because we don't really know who and    *
    *                      where the LOAD SYSIN cards are used.    *
    *                      We discussed this and didn't come to a  *
    *                      unique answer. We believe, there are    *
    *                      only a few cases where they are using   *
    *                      the generated control cards, but?       *
    *                      pb 12781                                *
    ****************************************************************
    * RECOMMENDATION: APPLY the PTF.                               *
    ****************************************************************
    The inzrload  module was changed.
    

Problem conclusion

  • APPLY the PTF.
    

Temporary fix

Comments

APAR Information

  • APAR number

    PI41559

  • Reported component name

    DB2 HI PERF UNL

  • Reported component ID

    5697F4400

  • Reported release

    430

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2015-05-21

  • Closed date

    2015-05-29

  • Last modified date

    2015-07-01

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

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

Modules/Macros

  • INZUTILK
    

Fix information

  • Fixed component name

    DB2 HI PERF UNL

  • Fixed component ID

    5697F4400

Applicable component levels

  • R430 PSY UI28086

       UP15/06/03 P F506

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":"SSAUUV","label":"IBM Db2 High Performance Unload for z\/OS"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"4.3.0","Edition":"","Line of Business":{"code":"LOB10","label":"Data and AI"}}]

Document Information

Modified date:
12 February 2021