DB2 - Problem description
| Problem IC65447 | Status: Closed |
DB2 fails to allocate memory when DB2_LARGE_PAGE_MEM=* config parameter is set on Windows server. | |
| product: | |
DB2 FOR LUW / DB2FORLUW / 970 - DB2 | |
| Problem description: | |
DB2_LARGE_PAGE_MEM=* is set in Windows 2003 ENT SVR 64bit to use
large page memory, hit the OSERR(87) "The parameter is
incorrect." and DIA8300C A memory heap error has occurred.
CALLED : OS, -, VirtualAlloc
OSERR : 87 "The parameter is incorrect."
MESSAGE : Private memory and/or virtual address space exhausted
DATA #1 : Requested size, PD_TYPE_MEM_REQUESTED_SIZE, 8 bytes
65536
DATA #2 : Current set size, PD_TYPE_SET_SIZE, 8 bytes
128974848
FUNCTION: DB2 UDB, buffer pool services, sqlbinit, probe:500
MESSAGE : ZRC=0x8B0F0010=-1961951216=SQLO_NOMEM_BPH
"No memory available in 'Buffer Pool Heap'"
DIA8300C A memory heap error has occurred.
DATA #1 : String, 35 bytes
BufferPool memory allocation failed
Windows API VirtualAlloc is requesed to allocate memory of size
64KB with flag MEM_LARGE_PAGES.
This is a non-standard allocation and the API fails with an
error "The parameter is incorrect." | |
| Problem Summary: | |
**************************************************************** * USERS AFFECTED: * * Windows * **************************************************************** * PROBLEM DESCRIPTION: * * DB2_LARGE_PAGE_MEM=* is set in Windows 2003 ENT SVR 64bit * * touse large page memory, hit the OSERR(87) "The parameter * * isincorrect." and DIA8300C A memory heap error has * * occurred.CALLED : OS, -, VirtualAllocOSERR : 87 "The * * parameter is incorrect."MESSAGE : Private memory and/or * * virtual address spaceexhaustedDATA #1 : Requested size, * * PD_TYPE_MEM_REQUESTED_SIZE, 8bytes65536DATA #2 : Current set * * size, PD_TYPE_SET_SIZE, 8 bytes128974848FUNCTION: DB2 UDB, * * buffer pool services, sqlbinit, probe:500MESSAGE : * * ZRC=0x8B0F0010=-1961951216=SQLO_NOMEM_BPH"No memory * * available in 'Buffer Pool Heap'"DIA8300C A memory heap error * * has occurred.DATA #1 : String, 35 bytesBufferPool memory * * allocation failed * **************************************************************** * RECOMMENDATION: * * Upgrade to product version 9.7 Fix Pack 2. * **************************************************************** | |
| Local Fix: | |
remove DB2_LARGE_PAGE_MEM=* registry for work around | |
| available fix packs: | |
DB2 Version 9.7 Fix Pack 2 for Linux, UNIX, and Windows | |
| Solution | |
Problem was fixed in version 9.7 Fix Pack 2. We are using the flag MEM_LARGE_PAGES to get 64kb of memory, which is the root cause for the failure. We didn't want to use large page flag, which could cause problem to use the thread model. | |
| Workaround | |
not known / see Local fix | |
| Timestamps | |
Date - problem reported : Date - problem closed : Date - last modified : | 06.01.2010 14.06.2010 14.06.2010 |
| Problem solved at the following versions (IBM BugInfos) | |
9.7.FP2 | |
| Problem solved according to the fixlist(s) of the following version(s) | |
| 9.7.0.2 |
|