IBM Support

IC77702: INFINITE LOOP IN SQLOREST CALLED BY SQLBFREEUPSLOT WHEN BUFFER POOL IS FULL

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • When a buffer pool is full, and at the same time a new object
    (e.g. table, index, etc...) needs to be loaded into the same
    buffer pool, DB2 will attempt to free an existing buffer pool
    slot in order to make space for the new object. The agent
    working on this task may enter an infinite loop with the
    following call stack:
    
    ossSleep
    sqlorest
    sqlbFreeUpSlot
    sqlbGetVictimSlot
    sqlbGetPageFromDisk
    sqlbfix
    sqlbFixDataEMP
    sqlbIsExtentAllocated
    sqlbDMScheckObjAlloc
    sqlbGetDiskPageID
    sqlbGetPageFromDisk
    sqlbfix
    
    The call stack file will also show that the agent will be
    holding the SQLO_LT_SQLB_POOL_CB__extentAnchorTableLatch latch,
    thus blocking other EDUs waiting for the same latch. The top
    routines, sqlorest and ossSleep, will be executed infinitely.
    DB2 trace of this agent will show the following repetitive
    calls:
    
    102         sqlorest entry [eduid 70 eduname db2agent]
    103         sqlorest data [probe 10]
    217         sqlorest exit
    218         sqeAgent::QueryInterrupt entry [eduid 70 eduname
    db2agent]
    219         sqeAgent::QueryInterrupt data [probe 70]
    220         sqeAgent::QueryInterrupt exit
    (...looping back to sqlorest...)
    
    A diagnostic message similar to the following may or may not get
    printed in the DB2 diagnostic log:
    
    2011-07-22-16.02.59.639777-240 E18646747A807      LEVEL: Warning
    PID     : 7999                 TID  : 70          PROC : db2sysc
    INSTANCE: db2inst1             NODE : 000         DB   : SAMPLE
    APPHDL  : 0-42                 APPID:
    10.0.0.100.50918.110722200240
    AUTHID  : DB2INST1
    EDUID   : 70                   EDUNAME: db2agent (SAMPLE)
    FUNCTION: DB2 UDB, Common Trace API, sqlbFreeUpSlot, probe:120
    MESSAGE : ADM6082W  The current transaction is attempting to do
    work that is
              not allowed to fail.  However, this work could not be
    completed as
              there are no free pages available in the buffer pool.
    Further
              attempts will be made to find free pages but in the
    future this
              situation can be avoided by increasing the size of
    buffer pool "BP4"
              (ID "2").
    
    However, the instance will likely not hang completely; jobs
    requiring buffer pools other than the one running out of space
    will continue as normal.
    
    This problem can only be seen in DB2 UDB 9.7 FixPak 1 or newer.
    

Local fix

  • Ensure the correst sizing of your buffer pools in order to
    decrease the likelihood of a buffer pool running out of space.
    

Problem summary

  • ****************************************************************
    * USERS AFFECTED:                                              *
    * see APAR description                                         *
    ****************************************************************
    * PROBLEM DESCRIPTION:                                         *
    * see APAR description                                         *
    ****************************************************************
    * RECOMMENDATION:                                              *
    * Upgrade to DB2 UDB 9.7 FixPak 5.                             *
    ****************************************************************
    

Problem conclusion

  • Problem first fixed in DB2 UDB 9.7 FixPak 5.
    

Temporary fix

Comments

APAR Information

  • APAR number

    IC77702

  • 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-07-25

  • Closed date

    2011-12-08

  • Last modified date

    2011-12-08

  • 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

[{"Business Unit":{"code":"BU048","label":"IBM Software"},"Product":{"code":"SSEPGG","label":"DB2 for Linux, UNIX and Windows"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"9.7","Edition":"","Line of Business":{"code":"LOB10","label":"Data and AI"}}]

Document Information

Modified date:
08 December 2011