DB2 - Problem description
Problem IT32180 | Status: Closed |
HADR STANDBY MAY START UP WITH SYSTEM BUFFER POOLS ONLY, INSTEADOF RETURNING AN SQL1768N ERROR | |
product: | |
DB2 FOR LUW / DB2FORLUW / B10 - DB2 | |
Problem description: | |
When a database is activated, if there is insufficient memory to start all the defined user buffer pools, the database will still be activated with tiny system buffer pools only (also commonly referred to as 'hidden' buffer pools) in order to allow for an administrator to rectify the situation. In such a scenario, the db2diag.log will contain messages about the insufficient memory condition (as seen further below), and the ADM6073W warning message will be logged into both the db2diag.log and admin logs. When this same condition occurs during a START HADR AS STANDBY operation or ACTIVATE DATABASE command on a HADR standby database, the standby database is incorrectly allowed to start with only the system buffer pools. The command should have been rejected with error SQL1768 reason code 13. It is not desired behavior to allow the use of HADR standby database with only system buffer pools because it would drastically impact standby log replay performance. Sample messages in db2diag.log: FUNCTION: DB2 UDB, SQO Memory Management, sqlogmshr, probe:149 MESSAGE : ZRC=0x850F00C5=-2062614331=SQLO_NO_INS_MEM "Insufficient instance_memory to allocate new memory" DATA #2 : String, 56 bytes Insufficient INSTANCE_MEMORY to allocate new memory set. ... FUNCTION: DB2 UDB, base sys utilities, sqeLocalDatabase::FirstConnect, probe:10000 MESSAGE : ZRC=0x850F00C5=-2062614331=SQLO_NO_INS_MEM "Insufficient instance_memory to allocate new memory" DATA #1 : String, 283 bytes Failed to allocate the database shared memory set. The configured DATABASE_MEMORY plus smaller overflow may have exceeded INSTANCE_MEMORY or the maximum shared memory on the system. Attempting to start up with only the system buffer pools. Database shared memory set size is (bytes): ... FUNCTION: DB2 UDB, buffer pool services, sqlbAssignBufferPool, probe:2 MESSAGE : ADM6073W The table space "SYSCATSPACE" (ID "0") is configured to use buffer pool ID "1", but this buffer pool is not active at this time. In the interim the table space will use buffer pool ID "4099". The inactive buffer pool should become available at next database startup provided that the required memory is available. ... With this APAR fix, behavior changes as follows: If the HADR Standby database encounters the condition described above, where there is insufficient memory to allocate all buffer pools, it will instead fail with SQL1768N reason code 13 error. "SQL1768N Unable to start HADR. Reason code = 13. 13 - An HADR standby database cannot start without at least one regular buffer pool. A buffer pool could not be started due to insufficient memory." On regular db or a HADR primary, a warning message SQL1478W will continue to be returned with db activated successfully. "SQL1478W The defined buffer pools could not be started. Instead, one small buffer pool for each page size supported by the database manager has been started." | |
Problem Summary: | |
**************************************************************** * USERS AFFECTED: * * All * **************************************************************** * PROBLEM DESCRIPTION: * * See Error Description * **************************************************************** * RECOMMENDATION: * * Upgrade to Db2 version 11.1 Mod 4 fixpack 6 * **************************************************************** | |
Local Fix: | |
Solution | |
Workaround | |
not known / see Local fix | |
BUG-Tracking | |
forerunner : follow-up : IT32436 | |
Timestamps | |
Date - problem reported : Date - problem closed : Date - last modified : | 13.03.2020 07.04.2020 07.04.2020 |
Problem solved at the following versions (IBM BugInfos) | |
Problem solved according to the fixlist(s) of the following version(s) |