DB2 - Problem description
Problem IC77749 | Status: Closed |
DB2PD DURATION OUTPUT SHOWS 99 HOURS WHEN DURATION IS > 99 HRS | |
product: | |
DB2 FOR LUW / DB2FORLUW / 970 - DB2 | |
Problem description: | |
In PMR 59278,999,000, we (including customer, L2, and L3) were confused with db2pd -runstats reporting a duration of 99 hours when it was in fact longer. The start and stop timestamps are actually provided as well, and after a while, it was evident that we could look at the details and not rely on duration DB2 calculated as we progressed in problem determination. The duration is currently specified as a hh:mm:ss format with 2 digts max for hours. To stop outputting incorrect diagnostic data, we could relax the 2 digit max, or just print a "> 99 hours" string instead. // Function to print duration in the format of hh:mm:ss @w548255mif void pdPrintDuration( FILE * fp, Uint32 durTime ) { // Put a cap of maximum 99 hours. if ( durTime <= 99*60*60 ) { fprintf( fp, "%02u:%02u:%02u\n", (durTime / (60*60)), ((durTime / 60) % 60), (durTime % 60)); } else { fprintf( fp, "%02d:%02u:%02u\n", 99, ((durTime / 60) % 60), (durTime % 60)); } } | |
Problem Summary: | |
**************************************************************** * USERS AFFECTED: * * All * **************************************************************** * PROBLEM DESCRIPTION: * * In PMR 59278,999,000, we (including customer, L2, and L3) * * were * * confused with db2pd -runstats reporting a duration of 99 * * hours * * when it was in fact longer. The start and stop timestamps * * are * * actually provided as well, and after a while, it was evident * * * * that we could look at the details and not rely on duration * * DB2 * * calculated as we progressed in problem determination. * * * * * * * * The duration is currently specified as a hh:mm:ss format * * with 2 * * digts max for hours. To stop outputting incorrect * * diagnostic * * data, we could relax the 2 digit max, or just print a "> 99 * * * * hours" string instead. * * * * * * * * // Function to print duration in the format of hh:mm:ss * * * * @w548255mif * * * * void pdPrintDuration( FILE * fp, Uint32 durTime ) * * * * { * * * * // Put a cap of maximum 99 hours. * * * * if ( durTime <= 99*60*60 ) * * * * { * * * * fprintf( fp, "%02u:%02u:%02u\n", * * * * (durTime / (60*60)), * * * * ((durTime / 60) % 60), * * * * (durTime % 60)); * * * * } * * * * else * * * * { * * * * fprintf( fp, "%02d:%02u:%02u\n", * * * * 99, * * * * ((durTime / 60) % 60), * * * * (durTime % 60)); * * * * } * * * * } * **************************************************************** * RECOMMENDATION: * * Upgrade to next fixpack * **************************************************************** | |
Local Fix: | |
available fix packs: | |
DB2 Version 9.7 Fix Pack 5 for Linux, UNIX, and Windows | |
Solution | |
Workaround | |
not known / see Local fix | |
Timestamps | |
Date - problem reported : Date - problem closed : Date - last modified : | 26.07.2011 12.12.2011 12.12.2011 |
Problem solved at the following versions (IBM BugInfos) | |
Problem solved according to the fixlist(s) of the following version(s) | |
9.7.0.5 |