IBM Support

JR26176: UNDER THE RARE CASES WHERE A DB2 APPLICATION CONTINUALLY LOADS AND UNLOADS DB2OSSE.DLL, HANDLES ARE LEAKED

Subscribe to this APAR

By subscribing, you receive periodic emails alerting you to the status of the APAR, along with a link to the fix after it becomes available. You can track this item individually or track all items by product.

Notify me when this APAR changes.

Notify me when an APAR for this component changes.

 

APAR status

  • Closed as program error.

Error description

  • Under most circumstances, db2osse.dll does not exhibit any
    handle leaks because when the DB2 application that loaded
    db2osse.dll exits, the OS automatically cleans up and closes
    off the opened handles. Only in the cases where a DB2
    application stays running and it continually loads and unloads
    db2osse.dll will a handle leak result. An example of such an
    application would be one that creates/updates DB2 ODBC data
    sources. Each invocation of the ODBC API (such as
    SQLConfigDataSource()) will result in the OS loading and then
    unloading db2odbc.dll (which in turn loads/unloads
    db2osse.dll). Note: As soon as the application exits, however,
    the OS will close off all the opened handles.
    A DB2 application that stays running while continually loading
    and unloading db2osse.dll will result in handles being leaked
    and after some time, the system may become unstable because it
    starts to run out of resources.
    Using a handle viewing utility such as Process Explorer, the
    following seen as leaking:
    \BaseNamedObjects\SymGetModuleInfo-<pid>,
    \BaseNamedObjects\SymFunctionTableAccess-<pid>,
    \BaseNamedObjects\SymRegisterCallback-<pid>,
    \BaseNamedObjects\SymGetModuleBase-<pid>,
    \BaseNamedObjects\StackWalk-<pid>,
    \BaseNamedObjects\EnumerateLoadedModules64-<pid>,
    \BaseNamedObjects\SymGetSymFromAddr-<pid>,
    \BaseNamedObjects\SymInitialize-<pid>,
    \BaseNamedObjects\SymGetSearchPath-<pid>,
    \BaseNamedObjects\SymSetSearchPath-<pid>,
    \BaseNamedObjects\SymCleanup-<pid>,
    \BaseNamedObjects\SymGetOptons-<pid>,
    \BaseNamedObjects\SymSetOptons-<pid>,
    \BaseNamedObjects\GetTimestampForLoadedLibrary-<pid>,
    \BaseNamedObjects\ImagehlpApiVersion-<pid>,
    \BaseNamedObjects\ImagehlpApiVersionEx-<pid>,
    \BaseNamedObjects\SymLoadModule64-<pid>,
    \BaseNamedObjects\SymUnloadModule64-<pid>
    

Local fix

  • Periodically close off and restart the DB2 application that is
    continually loading/unloading db2osse.dll. This will allow
    Windows to step in and clean up the leaked handles.
    

Problem summary

  • UNDER THE RARE CASES WHERE A DB2 APPLICATION CONTINUALLY LOADS A
    ND UNLOADS DB2OSSE.DLL, HANDLES ARE LEAKED
    

Problem conclusion

  • First Fixed in DB2 V8.1 Fixpak 16.
    

Temporary fix

Comments

APAR Information

  • APAR number

    JR26176

  • Reported component name

    DB2 UDB ESE WIN

  • Reported component ID

    5765F4101

  • Reported release

    820

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2007-03-19

  • Closed date

    2009-06-25

  • Last modified date

    2009-06-25

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

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

    JR28450 JR28451

Fix information

  • Fixed component name

    DB2 UDB ESE WIN

  • Fixed component ID

    5765F4101

Applicable component levels

  • R820 PSY

       UP

[{"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SSEPGG","label":"Db2 for Linux, UNIX and Windows"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"820","Edition":"","Line of Business":{"code":"LOB10","label":"Data and AI"}}]

Document Information

Modified date:
25 June 2009