home clear 64x64
en blue 200x116 de orange 200x116 info letter User
suche 36x36
Latest versionsfixlist
11.1.0.7 FixList
10.5.0.9 FixList
10.1.0.6 FixList
9.8.0.5 FixList
9.7.0.11 FixList
9.5.0.10 FixList
9.1.0.12 FixList
Have problems? - contact us.
Register for free anmeldung-x26
Contact form kontakt-x26

DB2 - Problem description

Problem IT07070 Status: Closed

STMM MAXIMUM TARGETS MAY BE TEMPORARILY TOO HIGH, SOME SWAPPING MAY OCCUR
ON LINUX SYSTEMS

product:
DB2 FOR LUW / DB2FORLUW / 970 - DB2
Problem description:
This problem affects DB2/Linux systems using STMM to tune the 
overall database memory usage based on system memory 
availability, i.e. 
- INSTANCE_MEMORY is not set to a fixed value 
- DATABASE_MEMORY is set to AUTOMATIC 
- SELF_TUNING_MEM is set to YES 
 
If the Linux VMM is under pressure to reclaim memory, some DB2 
shared memory pages may become unmapped, i.e. removed from the 
db2sysc process page table.  If the memory is not subsequently 
swapped out, DB2's self tuning memory manager (STMM) will assume 
this memory is part of the file cache, and available for other 
usage.  This may cause STMM maximum memory targets to be too 
high. 
 
This should be a temporary condition, but may trigger additional 
swapping on Linux systems 
- STMM memory targets are conservative, which generally avoid 
the need for reclaiming shared memory. 
- If the unmapped shared memory is swapped out, it is accounted 
for and memory targets reduced 
- Even if maximum targets are too high, there must be a 
performance benefit to commit additional memory to DB2 to 
increase memory usage.  For this to occur, generally memory is 
in high demand and frequently accessed, in which case any 
unmapped memory is likely to be re-referenced within a short 
time period, increasing the "Mapped" counter to be again in line 
with the Shmem counter. 
 
The overshoot in STMM's maximum memory target can be calculated 
by subtracting the "Mapped" field from the "Shmem" field in the 
/proc/meminfo output.  For example : 
Mapped:         91855876 kB 
Shmem:          119439256 kB 
 
In this case there is approximately 119439256-91855876 = 
27583380 or 27GB of unmapped shared memory, causing STMM's 
maximum memory target to be 27GB too high.  It does not mean 
that STMM will increase the configuration by this amount, but it 
is a possibility, and STMM may not correctly detect a 
constrained memory situation on the system.
Problem Summary:
**************************************************************** 
* USERS AFFECTED:                                              * 
* Systems using STMM to tune Database_Memory on Linux AND      * 
* Instance_Memory is set to AUTOMATIC                          * 
**************************************************************** 
* PROBLEM DESCRIPTION:                                         * 
* See Error Description                                        * 
**************************************************************** 
* RECOMMENDATION:                                              * 
* upgrade to DB2 Version 9.7 Fix Pack 11                       * 
****************************************************************
Local Fix:
Specify a fixed INSTANCE_MEMORY or DATABASE_MEMORY setting that 
limits DB2's memory usage to reasonable values (this can be done 
based on checking historical database_memory tunings in the 
db2diag.log or STMM log)
Solution
Problem first fixed in DB2 Version 9.7 Fix Pack 11
Workaround
see Local Fix
Timestamps
Date  - problem reported    :
Date  - problem closed      :
Date  - last modified       :
10.02.2015
23.10.2015
23.10.2015
Problem solved at the following versions (IBM BugInfos)
9.7.FP11
Problem solved according to the fixlist(s) of the following version(s)
9.7.0.11 FixList