IBM Support

IC74960: DB2READER.CLOSE() IS NOT CLOSING THE UNDERLYING CURSOR, CAN HOLD DATABASE LOCKS

Subscribe

You can track all active APARs for this component.

APAR status

  • Closed as program error.

Error description

  • The DB2 .NET Data provider's DB2Reader.Close() operation is not
    closing the underlying cursor on the database server.  It is
    possible that a cursor can hold a database lock.   Calling
    DB2Reader.Close() may not actually release that lock.
    

Local fix

  • The cursor will be released when a call to DB2Command.Dispose()
    is issued.  If the parent DB2Command object from which the
    DB2Reader object was created from is disposed, then the cursor
    will be closed, and all underlying locks held by the cursor will
    be released as well.
    

Problem summary

  • ****************************************************************
    * USERS AFFECTED:                                              *
    * Windows users using DB2 .NET provider                        *
    ****************************************************************
    * PROBLEM DESCRIPTION:                                         *
    * The DB2 .NET Data provider's DB2Reader.Close() operation is  *
    * not closing the underlying cursor on the database server.    *
    * It is possible that a cursor can hold a database lock.       *
    * Calling DB2Reader.Close() may not actually release that      *
    * lock.                                                        *
    ****************************************************************
    * RECOMMENDATION:                                              *
    * Upgrade to DB2 Version 9.7, Fixpack 5                        *
    ****************************************************************
    

Problem conclusion

  • First fixed in DB2 Version 9.7, Fixpack 5
    

Temporary fix

  • The cursor will be released when a call to DB2Command.Dispose()
    is issued.  If the parent DB2Command object from which the
    DB2Reader object was created from is disposed, then the cursor
    will be closed, and all underlying locks held by the cursor will
    be released as well.
    

Comments

APAR Information

  • APAR number

    IC74960

  • 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

    2011-03-10

  • Closed date

    2011-12-21

  • Last modified date

    2011-12-21

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

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

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 #: IC74960

Modified date: 21 December 2011