IBM Support

IC73403: SPECIFYING THE SPECIFIC NAME OF A PROCEDURE WHILE TRANSFERRING OWNERSHIP FAILS WITH SQL0204N

Subscribe

You can track all active APARs for this component.

APAR status

  • Closed as program error.

Error description

  • DB2 supports transferring ownership of procedures by specifying
    the procedure's name or the specific name it was designated.
    For example:
    
    db2 "create procedure MYPROCS.P1 () language sql specific
    P1_SPECIFIC begin end"
    create procedure MYPROCS.P1 () language sql specific P1_SPECIFIC
    begin end
    
    DB20000I  The SQL command completed successfully.
    
    P1 is the procedure name, while P1_SPECIFIC is the specific
    name.  If a specific name is not specified, then a system
    generated name starting with "SQL" will be designated as the
    specific name.
    
    While attempting to transfer ownership of a procedure using the
    specific name, you will incorrectly fail to do so by receiving a
    SQL0204N message similar to the following:
    
    db2 "transfer ownership of specific procedure
    MYPROCS.P1_SPECIFIC to user zurbie preserve privileges"
    transfer ownership of specific procedure MYPROCS.P1_SPECIFIC to
    user zurbie preserve privileges
    DB21034E  The command was processed as an SQL statement because
    it was not a
    valid Command Line Processor command.  During SQL processing it
    returned:
    SQL0204N  "MYPROCS.        FIC" is an undefined name.
    SQLSTATE=42704
    

Local fix

  • Refer to the procedure name itself instead of the specific name
    while transferring ownership.  From the above example, consider
    the following:
    
    db2 "transfer ownership of procedure MYPROCS.P1 to user zurbie
    preserve privileges"
    transfer ownership of procedure MYPROCS.P1 to user zurbie
    preserve privileges
    DB20000I  The SQL command completed successfully.
    

Problem summary

  • ****************************************************************
    * USERS AFFECTED:                                              *
    * DB2 Version 9.7 Fix Pack 3 or Fix Pack 3a servers on Linux,  *
    * Unix and Windows platforms issuing the TRANSFER OWNERSHIP    *
    * statement specifying the specific name for procedures.       *
    ****************************************************************
    * PROBLEM DESCRIPTION:                                         *
    * Incorrectly assigned local variables lead to the inability   *
    * to find procedures based on the specific name initially      *
    * passed in by users.  Thus, the procedure can not be found,   *
    * and results in SQL0204N message instead.                     *
    ****************************************************************
    * RECOMMENDATION:                                              *
    * Refer to the local fix for the simplest workaround.  Apply   *
    * DB2 Version 9.7 Fix Pack 4 if you rely on transferring       *
    * ownership of procedures using the specific name.             *
    ****************************************************************
    

Problem conclusion

  • Problem is first fixed in DB2 Version 9.7 Fix Pack 4 and all
    subsequent Fix Packs.
    

Temporary fix

Comments

APAR Information

  • APAR number

    IC73403

  • Reported component name

    DB2 FOR LUW

  • Reported component ID

    DB2FORLUW

  • Reported release

    970

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2010-12-20

  • Closed date

    2011-04-28

  • Last modified date

    2011-04-28

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

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

    IC73408

Fix information

  • Fixed component name

    DB2 FOR LUW

  • Fixed component ID

    DB2FORLUW

Applicable component levels

  • R970 PSN

       UP



Document information

More support for: DB2 for Linux, UNIX and Windows

Software version: 9.7

Reference #: IC73403

Modified date: 28 April 2011