DB2 - Problem description
Problem IT37447 | Status: Closed |
ROLLFORWARD ON UNAVAILABLE NLI TABLE MAY CAUSE FODC_BADPAGE ERRORS | |
product: | |
DB2 FOR LUW / DB2FORLUW / B50 - DB2 | |
Problem description: | |
Conducting a rollforward on a NLI table should mark that table as unavailable and prevent log records from being replayed on that table. However, there are cases where the rollforward can be broken up into several phases and invalid log records are erroneously replayed on the NLI tables. This can lead to abnormal behavior which can lead to outages. This problem has been primarily observed on the standby database in a HADR environment during restore. If a table has been created or altered as not logged initially, and HADR or rollforward failed on the table, it is possible that the user is facing this issue. Additionally, FODC_BadPage and SQLP_BADLOG errors like the ones below may appear in the db2diag.log and db2diag folders: 2021-06-10-14.51.16.494205+180 I2128431E574 LEVEL: Severe PID : 20770 TID : 48930578491136 PROC : db2sysc 0 INSTANCE: db2inst1 NODE : 000 DB : BLUDB APPHDL : 0-180 APPID: xxx HOSTNAME: xxx EDUID : 372 EDUNAME: db2redow (BLUDB) 0 FUNCTION: DB2 UDB, CDE Data, Recovery::redoXorUpdate, probe:2050 RETCODE : ZRC=0x87DB0001=-2015690751=CDE_SEVERE_BADPAGE "Severe CDE bad page error" DIA8500C A data file error has occurred, record id is "". 2021-06-10-14.51.48.352888+180 I2279144E1293 LEVEL: Severe PID : 20770 TID : 48930729486080 PROC : db2sysc 0 INSTANCE: db2inst1 NODE : 000 DB : BLUDB APPHDL : 0-180 APPID: xxx HOSTNAME: xxx EDUID : 336 EDUNAME: db2agent (BLUDB) 0 FUNCTION: DB2 UDB, data protection services, sqlpGLFHValLotch::writeNew, probe:610 MESSAGE : ZRC=0x8610000D=-2045771763=SQLP_BADLOG "Log File cannot be used" DIA8414C Logging can not continue due to an error. CALLSTCK: (Static functions may not be resolved correctly, as they are resolved to the nearest symbol) [0] 0x00002B08119DCCFF _ZN16sqlpGLFHValLotch8writeNewEv + 0x7F [1] 0x00002B0811A1B0E0 _Z31sqlpProcessPostRollforwardFlagsP15sqlpDbcbsHandlem + 0x3A0 [2] 0x00002B0811A2660B _Z19sqlpForwardRecoveryP8sqeAgenttPKcPiPjt + 0x93B [3] 0x00002B08119A5DE7 _Z16sqlpReplayMasterP8sqeAgent + 0x1FE7 [4] 0x00002B080F2A0447 _Z26sqleIndCoordProcessRequestP8sqeAgent + 0x19A7 [5] 0x00002B080F2CED78 _ZN8sqeAgent6RunEDUEv + 0x4F8 [6] 0x00002B081342ECA4 _ZN9sqzEDUObj9EDUDriverEv + 0x1A4 [7] 0x00002B08117169E6 sqloEDUEntry + 0x2A6 [8] 0x00002B0807386EA5 /lib64/libpthread.so.0 + 0x7EA5 [9] 0x00002B0818EAA8DD clone + 0x6D | |
Problem Summary: | |
**************************************************************** * USERS AFFECTED: * * ALL * **************************************************************** * PROBLEM DESCRIPTION: * * See Error Description * **************************************************************** * RECOMMENDATION: * * First fixed in DB2 Version 11.5 m6 Fix Pack 0 * **************************************************************** | |
Local Fix: | |
If the user is facing this problem, then the user will need to do a tablespace restore, which should resolve the issue. To prevent this problem from happening, the user should upgrade their system to Db2 v11.5.6 because a fix for this issue was delivered into this modpack. | |
Solution | |
Workaround | |
**************************************************************** * USERS AFFECTED: * * ALL * **************************************************************** * PROBLEM DESCRIPTION: * * See Error Description * **************************************************************** * RECOMMENDATION: * * First fixed in DB2 Version 11.5 m6 Fix Pack 0 * **************************************************************** | |
Comment | |
Conducting a rollforward on a NLI table should mark that table as unavailable and prevent log records from being replayed on that table. However, there are cases where the rollforward can be broken up into several phases and invalid log records are erroneously replayed on the NLI tables. This can lead to abnormal behavior which can lead to outages. This problem has been primarily observed on the standby database in a HADR environment during restore. If a table has been created or altered as not logged initially, and HADR or rollforward failed on the table, it is possible that the user is facing this issue. Additionally, FODC_BadPage and SQLP_BADLOG errors like the ones below may appear in the db2diag.log and db2diag folders: 2021-06-10-14.51.16.494205+180 I2128431E574 LEVEL: Severe PID : 20770 TID : 48930578491136 PROC : db2sysc 0 INSTANCE: db2inst1 NODE : 000 DB : BLUDB APPHDL : 0-180 APPID: xxx HOSTNAME: xxx EDUID : 372 EDUNAME: db2redow (BLUDB) 0 FUNCTION: DB2 UDB, CDE Data, Recovery::redoXorUpdate, probe:2050 RETCODE : ZRC=0x87DB0001=-2015690751=CDE_SEVERE_BADPAGE "Severe CDE bad page error" DIA8500C A data file error has occurred, record id is "". 2021-06-10-14.51.48.352888+180 I2279144E1293 LEVEL: Severe PID : 20770 TID : 48930729486080 PROC : db2sysc 0 INSTANCE: db2inst1 NODE : 000 DB : BLUDB APPHDL : 0-180 APPID: xxx HOSTNAME: xxx EDUID : 336 EDUNAME: db2agent (BLUDB) 0 FUNCTION: DB2 UDB, data protection services, sqlpGLFHValLotch::writeNew, probe:610 MESSAGE : ZRC=0x8610000D=-2045771763=SQLP_BADLOG "Log File cannot be used" DIA8414C Logging can not continue due to an error. CALLSTCK: (Static functions may not be resolved correctly, as they are resolved to the nearest symbol) [0] 0x00002B08119DCCFF _ZN16sqlpGLFHValLotch8writeNewEv + 0x7F [1] 0x00002B0811A1B0E0 _Z31sqlpProcessPostRollforwardFlagsP15sqlpDbcbsHandlem + 0x3A0 [2] 0x00002B0811A2660B _Z19sqlpForwardRecoveryP8sqeAgenttPKcPiPjt + 0x93B [3] 0x00002B08119A5DE7 _Z16sqlpReplayMasterP8sqeAgent + 0x1FE7 [4] 0x00002B080F2A0447 _Z26sqleIndCoordProcessRequestP8sqeAgent + 0x19A7 [5] 0x00002B080F2CED78 _ZN8sqeAgent6RunEDUEv + 0x4F8 [6] 0x00002B081342ECA4 _ZN9sqzEDUObj9EDUDriverEv + 0x1A4 [7] 0x00002B08117169E6 sqloEDUEntry + 0x2A6 [8] 0x00002B0807386EA5 /lib64/libpthread.so.0 + 0x7EA5 [9] 0x00002B0818EAA8DD clone + 0x6D | |
Timestamps | |
Date - problem reported : Date - problem closed : Date - last modified : | 29.06.2021 14.01.2022 14.01.2022 |
Problem solved at the following versions (IBM BugInfos) | |
Problem solved according to the fixlist(s) of the following version(s) |