DB2 - Problembeschreibung
| Problem IT20078 | Status: Geschlossen |
LOAD TERMINATE ON CORRUPT SMS TABLE (MISSING .INX FILE) WILL MARK DATABASE BAD | |
| Produkt: | |
DB2 FOR LUW / DB2FORLUW / A50 - DB2 | |
| Problembeschreibung: | |
A Load terminate on a SMS table that is in Load pending with
Index corruption (missing .INX file) will mark the database bad.
If a table is in Load pending state and has a corrupt index or
index Marked Bad in need of reorg the reorg on the index will
fail with SQL0668N:
db2 reorg indexes all for table testi
SQL0668N Operation not allowed for reason code "3" on table
"MARIAJ.TESTI".
SQLSTATE=57016
FUNCTION: DB2 UDB, relation data serv, sqlrreorg_index_obj,
probe:200
MESSAGE : ADM9505W Online index reorganization on table "TESTI"
(ID "2") and
table space "SMS_T" (ID "7") has been switched to
offline mode
because the indexes are marked for rebuild. These
indexes may have
been marked for rebuild during a roll forward through
an index
creation and/or recreation. If this is the case,
consider setting
the INDEXREC database manager configuration parameter
to RESTART.
This will cause indexes that are marked for rebuild
during roll
forward to be rebuilt during RESTART DATABASE
processing.
FUNCTION: DB2 UDB, relation data serv, sqlrreorg_indexes,
probe:1000
MESSAGE : ADM9504W Index reorganization on table "MARIAJ
.TESTI" (ID "2") and
table space "SMS_T" (ID "7") failed on this database
partition with
SQLCODE "-668" reason code "3".
This error can be totally normal, and a Load terminate should
resolve it, however do not terminate the Load without checking
if indeed there is
corruption on the table of the nature described here. db2dart /T
will have messages like these if the .INX file is missing (also
this can be checked on the tablespace directory)
Error: Unable to read pool page 0, object page 0, from pool 6,
due to rc 0x8402001E
Error: parent pool 6, object ID 2, object type Index.
If the table has an object file missing for the index (.INX
missing) a
Load Terminate might crash the database with
db2 "load from ex.out of del terminate into testi"
SQL0984C COMMIT or ROLLBACK was not successful. Subsequent SQL
statements
and any attempt to bring the database backup up will fail with
:
FUNCTION: DB2 UDB, data management, sqldAllocEmptyTCB, probe:1
RETCODE : ZRC=0x8704002F=-2029780945=SQLD_PARM "PARAMETER ERROR"
DIA8544C An invalid data type was encountered, the
value was "".
MESSAGE : Request to allocate TCB for ObjectID 0
DATA #1 : poolID, PD_TYPE_SQLD_POOL_ID, 4 bytes
0x00000000
CALLSTCK: (Static functions may not be resolved correctly, as
they are resolved to the nearest symbol)
[0] 0x09000001AA213424 pdLogRC + 0xE4
[1] 0x09000001AA62CE80 pdLogRC@glue17 + 0xF4
[2] 0x09000001AA534464
sqldAllocEmptyTCB__FP8sqeAgentPP8SQLD_TCBiN23UlT3UiT8 + 0x2C4
[3] 0x09000001A9D58008
sqldAllocEmptyTCB__FP8sqeAgentPP8SQLD_TCBiN23UlT3UiT8@glueA8D +
0x94
[4] 0x09000001AA607640
sqldFixTCBObj__FP8sqeAgentP11SQLB_OBJECTPP8SQLD_TCBPP16SQLB_OBJE
CT_DESCiUiT6 + 0x68
[5] 0x09000001AABD3028
sqluCheckObjectForRedo__FP8sqeAgentP9SQLP_LSN8P11SQLB_OBJECTT2Pi
T5PbT5iN29b + 0xF8
[6] 0x09000001AABD59E0
@148@sqlu_change_obj_values__FP8sqeAgentP18SQLU_OBJ_POOL_LISTP9S
QLP_LSN8iT4P15SQLD_RECOV_INFO + 0x1E4
[7] 0x09000001AABD10B0
sqlu_process_pending_operation__FP8sqeAgentiPcP9SQLP_LSN8P12SQLP
_PENLISTPUiP15SQLD_RECOV_INFO + 0x384
[8] 0x09000001A9509068 sqlptppl__FP8sqeAgent + 0x478
[9] 0x09000001A97B8934
sqlpRFWppl__FP8sqeAgentP9SQLP_DBCBP11SQLP_TENTRYP10SQLP_FRAPPP10
SQLP_FRSCBP9SQLP_LSN8Ui + 0x78
EDUID : 9715 EDUNAME: db2redom (TEST)
FUNCTION: DB2 UDB, data management, sqldFixTCBObj, probe:6383
MESSAGE : ZRC=0x8704002F=-2029780945=SQLD_PARM "PARAMETER ERROR"
DIA8544C An invalid data type was encountered, the
value was "".
DATA #1 : Object control block, PD_TYPE_SQLB_OBJECT, 12 bytes
Obj: {pool:0;obj:0;type:0} Parent={0;0}
DATA #2 : tcbFixFlags, PD_TYPE_SQLD_TCB_FIXFLAGS, 4 bytes
0x00000020
- TCB_EXPECT_NOTAVAIL
cannot be processed. SQLSTATE=58005 | |
| Problem-Zusammenfassung: | |
**************************************************************** * USERS AFFECTED: * * ALL * **************************************************************** * PROBLEM DESCRIPTION: * * See Error Description * **************************************************************** * RECOMMENDATION: * * See Local fix. * * Do not attempt to backup an SMS tablespace where there are * * table(s) in load pending state. * * Upgrade to DB2 11.1 level that has the fix. * **************************************************************** | |
| Local-Fix: | |
If the table is corrupt in the way described in this APAR (i.e .INX missing), do not run Load terminate, if unable to recover the missing file (.INX) extract all the data with db2dart /DDEL and drop the table and recreate. If the database has been marked bad after Load Terminate and restart fails with SQLD_PARM only option is to restore the database (Filtered recovery will not work) | |
| Lösung | |
| Workaround | |
keiner bekannt / siehe Local-Fix | |
| Bug-Verfolgung | |
Vorgänger : Nachfolger : IT27676 | |
| Weitere Daten | |
Datum - Problem gemeldet : Datum - Problem geschlossen : Datum - der letzten Änderung: | 05.04.2017 04.01.2019 04.01.2019 |
| Problem behoben ab folgender Versionen (IBM BugInfos) | |
| Problem behoben lt. FixList in der Version | |