Troubleshooting
Problem
Minimize performance impact of DB2's db2fodc data collection.
Symptom
DB2 will automatically create diagnostic data under certain circumstances: instance crashes, SQL0901s, corruption and application dumps, for example.
However, this can be quite costly if there are 1000s of threads accessing DB2 or it is a very large database with many members, for example.
This might manifest itself in brief freezes or brief performance impacts whilst DB2 is collecting the necessary data.
This data is often vital for IBM technical support to diagnose the problem. However, once the data has been collected and provided to IBM you might want to reduce the impact of the db2fodc automatic data collection until such time as the underlying issue is fixed?
Diagnosing The Problem
Brief freezes or hangs that coincide with these messages in the db2diag.log file:
2016-03-04-15.35.14.220836+120 E1025696A812 LEVEL: Error
PID : 24707160 TID : 80799 PROC : db2sysc 0
INSTANCE: db2inst1 NODE : 000 DB : SAMPLE
APPHDL : 0-38293 APPID: 127.0.0.0.50452.16053004562
AUTHID : TESTAUTH HOSTNAME: db2test
EDUID : 80799 EDUNAME: db2agent (SAMPLE) 0
FUNCTION: DB2 UDB, relation data serv, sqlrr_dump_ffdc, probe:30
MESSAGE : ADM14005E The following error occurred: "AppErr". First
Occurrence
Data Capture (FODC) has been invoked in the following mode:
"Automatic". Diagnostic information has been recorded in the
directory named
"/home/db2inst1/sqllib/db2dump/FODC_AppErr_2016-03-04-15.35.14.219874_24707160_80799_000/".
The above message indicates that DB2 has automatically collected diagnostic data for a particular application issue. This data will need to be sent to IBM for analysis but once it has been analysed and a resolution is pending the db2fodc process can be tuned to collect BASIC information.
Resolving The Problem
You can reduce the impact of the db2fodc data collection as follows:
Log in as the DB2 instance owner.
Run the following commands:
db2set DB2FODC=SERVICELEVEL=BASIC
Stop any applications
db2stop or db2stop force
db2start
Then verify if the setting is in place:
$ db2set -all
[i] DB2FODC=SERVICELEVEL=BASIC
The db2fodc data collection mechanism cannot be completely disabled but the BASIC option should reduce the impact until the issue is resolved.
Was this topic helpful?
Document Information
Modified date:
16 June 2018
UID
swg21985837