DB2 - Problem description
Problem IC64928 | Status: Closed |
PAGE CLEANING PERFORMANCE ISSUE DUE TO TEMPORARY OBJECT DIRTY PAGES. | |
product: | |
DB2 FOR LUW / DB2FORLUW / 970 - DB2 | |
Problem description: | |
Page cleaning often occurs in bufferpools to reduce the active log space being held up by dirty pages. In doing so, the page cleaners might encounter some pages from temporary object that are currently in use. On platforms without asynchronous IO, the page cleaners will wait until the temporary pages are released. During this period the page cleaners will stop all page cleaning activities, therefore allowing the dirty pages in the bufferpool to build up. If the temporary pages are not released soon enough then this could cause the active log space to accumulate, even past the softmax settings. Since the temporary pages do not play a part in recovery, cleaning them out will not help with reducing the active log space, therefore it is not necessary to clean out the temporary pages. The fix is to prevent the page cleaners from waiting on any temporary pages that are currently in use. Symptoms: 1. The following message appears in the db2diag.log 2009-11-24-10.37.49.841169+060 E14193576A697 LEVEL: Warning PID : 15055 TID : 1 PROC : db2agent (TEST) 0 INSTANCE: TEST NODE : 000 DB : TEST APPHDL : 0-2114 APPID: 10.21.22.58.51460.091124093715 AUTHID : TEST FUNCTION: DB2 UDB, data protection services, sqlpgResSpace, probe:1660 MESSAGE : ADM1822W The active log is being held by dirty pages. This is not an error, but database performance may be impacted. If possible, reduce the database work load. If this problem persists, either decrease the SOFTMAX and/or increase the NUM_IOCLEANERS DB configuration parameters. Also check if the active log space held by dirty pages substantially exceeds the softmax settings. 2. SET WRITE SUSPEND takes a long time to finish. The stack will show that it is waiting for pausing the page cleaners, and the page cleaners are waiting on page latches. | |
Problem Summary: | |
**************************************************************** * USERS AFFECTED: * * All * **************************************************************** * PROBLEM DESCRIPTION: * * Page cleaning often occurs in bufferpools to reduce * * theactivelog space being held up by dirty pages. In doing * * so, thepagecleaners might encounter some pages from * * temporary objectthatare currently in use. On platforms * * without asynchronous IO,thepage cleaners will wait until the * * temporary pages arereleased.During this period the page * * cleaners will stop all pagecleaningactivities, therefore * * allowing the dirty pages in thebufferpoolto build up. If * * the temporary pages are not released soonenough then this * * could cause the active log space toaccumulate,even past the * * softmax settings.Since the temporary pages do not play a * * part in recovery,cleaning them out will not help with * * reducing the active logspace, therefore it is not necessary * * to clean out thetemporarypages. The fix is to prevent the * * page cleaners from waitingonany temporary pages that are * * currently in use.Symptoms:1. The following message appears * * in the db2diag.log2009-11-24-10.37.49.841169+060 * * E14193576A697 LEVEL:WarningPID : 15055 * * TID : 1 PROC :db2agent (TEST)0INSTANCE: TEST * * NODE : 000 DB : TESTAPPHDL : 0-2114 * * APPID:10.21.22.58.51460.091124093715AUTHID : * * TESTFUNCTION: DB2 UDB, data protection services, * * sqlpgResSpace,probe:1660MESSAGE : ADM1822W The active log * * is being held by dirtypages.This is not an error, but * * database performance may beimpacted.If possible, reduce the * * database work load. If this problempersists, either * * decrease the SOFTMAX and/or increase theNUM_IOCLEANERS DB * * configuration parameters.Also check if the active log space * * held by dirty pagessubstantially exceeds the softmax * * settings.2. SET WRITE SUSPEND takes a long time to finish. * * The stackwill show that it is waiting for pausing the page * * cleaners,andthe page cleaners are waiting on page latches. * **************************************************************** * RECOMMENDATION: * * Upograde to db2 V9.7 fp2 * **************************************************************** | |
Local Fix: | |
Workaround: 1. Avoid using long running statements with temporary objects 2. Use a large sortheap to avoid spilling | |
available fix packs: | |
DB2 Version 9.7 Fix Pack 2 for Linux, UNIX, and Windows | |
Solution | |
First fixed in V9.7 FP2 | |
Workaround | |
n/a | |
Comment | |
n/a | |
Timestamps | |
Date - problem reported : Date - problem closed : Date - last modified : | 02.12.2009 04.05.2010 04.05.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 |