IBM Support

IC74557: STMM MIGHT INCORRECTLY CALCULATE DATABASE MEMORY TARGETS SIZE UNDER CERTAIN CIRCUMSTANCES

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • STMM incorrectly calculates database memory targets size and an
    overflow happened due to the free memory target being greater
    than database configured memory set when there isn't enough free
    memory in the machine.
    
    STMM tries to leave a certain percentage of memory as free
    memory, called the free memory target. When the free memory
    target is bigger than a database memory set while there isn't
    enough free memory in the machine, STMM may "incorrectly" decide
    to shrink the database memory set below 0. This leads to an
    overflow of the target database memory set size and the target
    consumer size those are reported in STMM.log
    
    Additionally, the error message like "ZRC=0xFFFFEC49=-5047" will
    appear in db2diag.log whenever the free memory in the box runs
    out, The error will also disappear on its own when some free
    memory becomes available in the box.
    
    Here is an example db2diag.log entry :
    
    2010-08-23-01.22.46.494522+480 E47256126A631      LEVEL: Warning
    PID     : 303152               TID  : 35746       PROC : db2sysc
    0
    INSTANCE: DB2INST1             NODE : 000         DB   : SAMPLE
    APPHDL  : 1-60027              APPID: *N1.DB2.100822171046
    AUTHID  : DB2INST1
    EDUID   : 35746                EDUNAME: db2stmm (SAMPLE) 0
    FUNCTION: DB2 UDB, Self tuning memory manager,
    stmmCheckIfFreeMemoryIsEnoughForSizeIncr, probe:667
    MESSAGE : ZRC=0xFFFFEC49=-5047
    DATA #1 : String, 143 bytes
    There is not enough free memory for size increase. Free memory
    in pages: Physical memory = 0, Instance memory = 160917,
    Database memory = 33072
    
    Here is an example stmm.X.log entry:
    
    2010-08-23-01.22.46.493934+480 I8862389A929       LEVEL: Event
    PID     : 303152               TID  : 35746       PROC : db2sysc
    0
    INSTANCE: DB2INST1             NODE : 000         DB   : SAMPLE
    APPHDL  : 1-60027              APPID: *N1.DB2.100822171046
    AUTHID  : DB2INST1
    EDUID   : 35746                EDUNAME: db2stmm (SAMPLE) 0
    FUNCTION: DB2 UDB, Self tuning memory manager,
    stmmGetDBMemDataAutomatic, probe:3824
    DATA #1 : String, 489 bytes
    Configured memory on the system: 2621440
    Memory currently available on the system: 147239
    Configured memory on the partition: 1102245
    Memory currently available on the partition: 160917
    Set's configured size: 199968
    Overflow left: 33072
    Uncommited size: 86256
    Target consumer size: 4500081190153110
    Current consumer size: 166896
    Max growth: 0
    Current overflow percent: 0.200000
    Target overflow percent: 0.000781
    Average benefit: 0
    Global benefit: Instance: DB2INST1 DB: SAMPLE     Benefit: 0
    
    2010-08-23-01.22.46.494730+480 I8863319A631       LEVEL: Warning
    PID     : 303152               TID  : 35746       PROC : db2sysc
    0
    INSTANCE: DB2INST1             NODE : 000         DB   : SAMPLE
    APPHDL  : 1-60027              APPID: *N1.DB2.100822171046
    AUTHID  : DB2INST1
    EDUID   : 35746                EDUNAME: db2stmm (SAMPLE) 0
    FUNCTION: DB2 UDB, Self tuning memory manager,
    stmmCheckIfFreeMemoryIsEnoughForSizeIncr, probe:667
    MESSAGE : ZRC=0xFFFFEC49=-5047
    DATA #1 : String, 143 bytes
    There is not enough free memory for size increase. Free memory
    in pages: Physical memory = 0, Instance memory = 160917,
    Database memory = 33072
    
    2010-08-23-01.22.46.529929+480 I8863951A627       LEVEL: Error
    PID     : 303152               TID  : 35746       PROC : db2sysc
    0
    INSTANCE: DB2INST1             NODE : 000         DB   : SAMPLE
    APPHDL  : 1-60027              APPID: *N1.DB2.100822171046
    AUTHID  : DB2INST1
    EDUID   : 35746                EDUNAME: db2stmm (SAMPLE) 0
    FUNCTION: DB2 UDB, Self tuning memory manager,
    stmmUpdateDBConfig, probe:275
    MESSAGE : ZRC=0x82AE00A7=-2102525785=STMM_CONFIG_UPDATE_FAILED
              "An attempted configuration update failed"
    DATA #1 : String, 79 bytes
    Error updating parameter Database_memory, updateValue = 208620,
    sqlcode = -5047
    
    2010-08-23-01.22.46.530322+480 I8864579A664       LEVEL: Event
    PID     : 303152               TID  : 35746       PROC : db2sysc
    0
    INSTANCE: DB2INST1             NODE : 000         DB   : SAMPLE
    APPHDL  : 1-60027              APPID: *N1.DB2.100822171046
    AUTHID  : DB2INST1
    EDUID   : 35746                EDUNAME: db2stmm (SAMPLE) 0
    FUNCTION: DB2 UDB, Self tuning memory manager,
    stmmMaintainOverflowSize, probe:4403
    DATA #1 : String, 225 bytes
    Original overflow size: 33072
    Target DBMem size: 4503599627361988
    Growth limit: 68719276752
    Expected DBMem size: 208620
    Current DBMem size: 199968
    Current consumer size: 166896
    Overflow size: 39993
    Overflow percent: 0.200000
    
    If you could see that unrealistically big figures for 'Target
    DBMem size' and 'Target consumer size' are appeared in
    STMM.x.log, in the example above, they are '4503599627361988'
    and '4500081190153110' respectively, then it is an indication
    that this problem applies to your environment.
    

Local fix

  • N/A
    

Problem summary

  • ****************************************************************
    * USERS AFFECTED:                                              *
    * ALL                                                          *
    ****************************************************************
    * PROBLEM DESCRIPTION:                                         *
    * see ERROR DESCRIPTION                                        *
    ****************************************************************
    * RECOMMENDATION:                                              *
    * Upgrade to DB2 Version 9.7 Fix Pack 5.                       *
    ****************************************************************
    

Problem conclusion

  • First fixed in DB2 Version 9.7 Fix Pack 5.
    

Temporary fix

Comments

APAR Information

  • APAR number

    IC74557

  • 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-02-18

  • Closed date

    2011-12-08

  • Last modified date

    2011-12-08

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

    IC71508

  • 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

  • R820 PSN

       UP

  • R910 PSN

       UP

  • R950 PSN

       UP

  • R970 PSN

       UP

  • R980 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