IBM Support

PM51072: ABEND04E RC00C90101 DSNIWTTD:500D OCCURS DURING DEALLOCATION BECAUSE OF A LARGE NUMBER OF READER CUBS CREATED FOR CGTTS.

A fix is available

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • ABEND04E rc00C90101 DSNIWTTD:500D occurs during deallocation
    because of a large number of reader CUBs created for CGTTs.
    Running a static application in DB2 v10 that was bound on DB2 v9
    that has a view that selects from a CGTT can create numerous
    reader cubs that are never freed or deleted creates problems
    during deallocation. Numerous other failures are also possible
    while running in v10 cm mode, ABEND04E rc00c9010E DSNIWKFD+205A
    and ABEND04E rc00E20003 DSNIWCUB.DSNSVBK +070E
    For example,create a CGTT
      CREATE GLOBAL TEMPORARY TABLE OWQYSPHV.TZRV
    (  RVE1PART CHARACTER (9) NOT NULL ,
     RVA1PART CHARACTER (9) NOT NULL ,
     RVA1LENR CHARACTER (22) NOT NULL ,
     RVA1DDAU CHARACTER (8) NOT NULL ,
     RVA1AUSD CHARACTER (8) NOT NULL ,
     RVA1ASTE CHARACTER (30) NOT NULL ,
     RVA1LEAR CHARACTER (3) NOT NULL
    );
    and create a VIEW
    CREATE VIEW OWQYSPHV.VZRV AS
        SELECT *
          FROM OWQYSPHV.TZRV ;
    Then within some application, using a CURSOR defined with HOLD,
    insert into the CGTT and then select from it MANY MANY times.
    Each iteration will result in creating a reader CUB that will
    not be freed.
    Depending on the application, space available, and the number of
    CUBs created, various failure symptoms are possible.
    Workaround: Rebinding the plan/package failing application
    -
    Additional information.
     Another dump title attributed to this error.
      DSN ,ABND=04E-00C90110,U=userid  ,M=C9
      ,C=101.DBDM-DELETDBD,M=DSNTFRCV,LOC=DSNGD001.DSNGDVO1:5004
     Keywords: rc00c90110 dsngdvo1 5004 erqual5004 vrace5004
    

Local fix

  • Rebind the failing plan/package application
    

Problem summary

  • ****************************************************************
    * USERS AFFECTED: All DB2 10 for z/OS users of created global  *
    *                 temporary tables                             *
    ****************************************************************
    * PROBLEM DESCRIPTION: The following abends may occur for      *
    *                      packages that reference created         *
    *                      global temporary tables.                *
    *                                                              *
    *                      ABEND04E RC00C90101 AT                  *
    *                           DSNIDM DSNIWTTD ERQUAL500D         *
    *                                                              *
    *                      ABEND04E RC00E20003 AT                  *
    *                           DSNIWCUB DSNSVBK +070E             *
    *                                                              *
    *                      ABEND04E RC00C9010E AT                  *
    *                           DSNIDM DSNIWKFD +205A              *
    *                                                              *
    *                      The problem only occurs for packages    *
    *                      bound on a release prior to DB2 10.     *
    ****************************************************************
    * RECOMMENDATION:                                              *
    ****************************************************************
    Packages executed on DB2 10 that reference created global
    temporary tables (CGTTs) and were bound on a previous release of
    DB2 may cause a storage shortage and various abend conditions.
    Storage associated with the CGTT cursor is not being freed by
    DB2.
    The following example illustrates the problem :
    
       CREATE GLOBAL TEMPORARY TABLE TEMP
      ( C1        CHARACTER (9) NOT NULL ,
        C2      CHARACTER (9) NOT NULL );
    
    
    In an application, reference a CGTT many times.
    
       EXEC SQL DECLARE C1 CURSOR WITH HOLD FOR
                SELECT C1, C2 FROM TEMP
    
       EXEC SQL INSERT INTO TEMP VALUES ('A','B');
    
       for (i = 0; i < 66000;  i++) {
         EXEC SQL OPEN C1;
         EXEC SQL FETCH C1 INTO :tcol1,:tcol2;
         EXEC SQL CLOSE C1;
       }
    
    The abends may occur when attempting to get storage associated
    with the CGTT or they may occur during deallocation when
    DB2 attempts to free the storage.  It is possible for the
    DB2 subsystem to crash due to this storage leak.
    
    The problem does not occur if the package is bound on DB2 10.
    A possible workaround for this problem is to rebind the package
    on DB2 10.
    

Problem conclusion

  • DB2 has been changed to free the storage associated with the
    workfile for the created global temporary table.
    
    Additional keywords :  SQLCGTT DB2STGLK/K
                           SQLSTORAGE
                           SQLMIGRATION
    

Temporary fix

  • *********
    * HIPER *
    *********
    

Comments

APAR Information

  • APAR number

    PM51072

  • Reported component name

    DB2 OS/390 & Z/

  • Reported component ID

    5740XYR00

  • Reported release

    A10

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    YesHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2011-10-27

  • Closed date

    2012-01-12

  • Last modified date

    2012-02-02

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

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

    UK75394

Modules/Macros

  • DSNIWCUB DSNIWKFL DSNIWKFT DSNIWRCC DSNIWXFT
    DSNXRBN9 DSNXRCG9 DSNXRTC9
    

Fix information

  • Fixed component name

    DB2 OS/390 & Z/

  • Fixed component ID

    5740XYR00

Applicable component levels

  • RA10 PSY UK75394

       UP12/01/27 P F201

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":"10.1","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":"10.1","Edition":"","Line of Business":{"code":"","label":""}}]

Document Information

Modified date:
02 February 2012