A few months ago I converted my client's database to win2003/64 with 32Gb RAM and db2 v9.5.2a. When the system is booted and db2 starts, it occupies a humble part of the available memory. That's the way I configured it using the DB2_OVERRIDE_BPF parameter. In the days that follow I notice the database grow (STMM) to occupy around 16 Gb (according to db2top M) and the windows task manager reports around 20 Gb used. That's the way this server runs for a few months now and a situations wich I consider to be "normal".
Yesterday afternoon I saw this
Code:
2009-02-23-14.49.36.835000+000 E23381596F659 LEVEL: Warning
PID : 696 TID : 2108 PROC : db2syscs.exe
INSTANCE: xxx NODE : 000 DB : xxxxx
APPHDL : 0-12 APPID: *LOCAL.DB2.090207101311
AUTHID : xxxxxx
EDUID : 2108 EDUNAME: db2stmm (P00BANK)
FUNCTION: DB2 UDB, Self tuning memory manager, stmmCheckIfFreeMemoryIsEnoughForSizeIncr, probe:555
MESSAGE : ZRC=0xFFFFEC49=-5047
DATA #1 : String, 145 bytes
There is not enough free memory for size increase. Free memory in pages: Physical memory = 0, Instance memory = 2390839, Database memory = 793632
2009-02-23-14.49.36.835000+000 I23382257F655 LEVEL: Error
PID : 696 TID : 2108 PROC : db2syscs.exe
INSTANCE: xxx NODE : 000 DB : xxxxxx
APPHDL : 0-12 APPID: *LOCAL.DB2.090207101311
AUTHID : xxxxxxx
EDUID : 2108 EDUNAME: db2stmm (P00BANK)
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, 80 bytes
Error updating parameter Database_memory, updateValue = 5752659, sqlcode = -5047
I cannot understand this. The hosting OS has plenty memory to spare...
This morning I notice that DB2 is returning memory to the O.S.!
db2top is reporting less than 10 Gb and according to the windows task manager only 14Gb is used.
Strange, as far as I can see the workload is normal and besides bufferpools reporting decreases in sizes no db2diag messages... Should I worry?