> Hi, I have a table that seems to be corrupted badly. Can somebody give me > some ideas as to how I should repair it? Any speculations as to what may > have caused the situation? I appreciate it! > > Here is the verifydb report on that table: > > ************************************************* > verifydb > 15-Nov-1998 16:18:00 > ************************************************* > S_DU17FC_TABLE_PATCH_WARNING WARNING: > > VERIFYDB operation TABLE (or XTABLE) can result in loss of user data when > run in any mode except REPORT. It will also modify the table to a heap > and remove all secondary indices on the table. This program is designed > as > a last-ditch attempt to recover a user table. It is intended only for > use > by Computer Associates technical support representatives. > It is NOT supported. You assume all risk if you use the program. > > If you do use the TABLE or XTABLE operation, it is recommended that you > backup the table's disk file before continuing. > S_DU04CB_START_TABLE_OP VERIFYDB: beginning TABLE/XTABLE operation > on table > stu_evt_txt from database sfaprod. > W_DM5031_MULT_REFERENCED_LEAF WARNING: BTREE leaf page 250715 is > referenced more than once. > W_DM5033_CIRCULAR_LEAF_CHAIN WARNING: Page 250715 is referenced > more than once due to a circular chain. > This means that dmf will start following a leaf page overflow chain, and > will > get stuck in an endless loop because the chain points back to a page in the > chain. > W_DM5042_NOT_DATA_PAGE PAGE 284866 is a NOT a data page, but > should be one. > W_DM503D_NO_SUCH_TID WARNING: Leaf page 284866 references data > page tid (page=284866, line=0). > However, the specified tid does not exist in this file. > W_DM5042_NOT_DATA_PAGE PAGE 284866 is a NOT a data page, but > should be one. > W_DM503D_NO_SUCH_TID WARNING: Leaf page 284866 references data > page tid (page=284866, line=1). > However, the specified tid does not exist in this file. > W_DM5042_NOT_DATA_PAGE PAGE 284866 is a NOT a data page, but > should be one. > W_DM503D_NO_SUCH_TID WARNING: Leaf page 284866 references data > page tid (page=284866, line=2). > However, the specified tid does not exist in this file. > W_DM5042_NOT_DATA_PAGE PAGE 284866 is a NOT a data page, but > should be one. > W_DM503D_NO_SUCH_TID WARNING: Leaf page 284866 references data > page tid (page=284866, line=3). > However, the specified tid does not exist in this file. > W_DM5042_NOT_DATA_PAGE PAGE 284866 is a NOT a data page, but > should be one. > W_DM503D_NO_SUCH_TID WARNING: Leaf page 284866 references data > page tid (page=284866, line=4). > However, the specified tid does not exist in this file. > W_DM5042_NOT_DATA_PAGE PAGE 284866 is a NOT a data page, but > should be one. > W_DM503D_NO_SUCH_TID WARNING: Leaf page 284866 references data > page tid (page=284866, line=5). > However, the specified tid does not exist in this file. > W_DM5042_NOT_DATA_PAGE PAGE 284866 is a NOT a data page, but > should be one. > W_DM503D_NO_SUCH_TID WARNING: Leaf page 284866 references data > page tid (page=284866, line=6). > However, the specified tid does not exist in this file. > W_DM5042_NOT_DATA_PAGE PAGE 284866 is a NOT a data page, but > should be one. > W_DM503D_NO_SUCH_TID WARNING: Leaf page 284866 references data > page tid (page=284866, line=7). > However, the specified tid does not exist in this file. > W_DM5042_NOT_DATA_PAGE PAGE 284866 is a NOT a data page, but > should be one. > W_DM503D_NO_SUCH_TID WARNING: Leaf page 284866 references data > page tid (page=284866, line=8). > However, the specified tid does not exist in this file. > W_DM503D_NO_SUCH_TID WARNING: Leaf page 230142 references data > page tid (page=249527, line=3). > However, the specified tid does not exist in this file. > W_DM503D_NO_SUCH_TID WARNING: Leaf page 230142 references data > page tid (page=249527, line=4). > However, the specified tid does not exist in this file. > W_DM503D_NO_SUCH_TID WARNING: Leaf page 230142 references data > page tid (page=249527, line=5). > However, the specified tid does not exist in this file. > W_DM503D_NO_SUCH_TID WARNING: Leaf page 230142 references data > page tid (page=249527, line=7). > However, the specified tid does not exist in this file. > W_DM503D_NO_SUCH_TID WARNING: Leaf page 230142 references data > page tid (page=249527, line=8). > However, the specified tid does not exist in this file. > W_DM503D_NO_SUCH_TID WARNING: Leaf page 230142 references data > page tid (page=249527, line=9). > However, the specified tid does not exist in this file. > W_DM503D_NO_SUCH_TID WARNING: Leaf page 230142 references data > page tid (page=249527, line=10). > However, the specified tid does not exist in this file. > W_DM503D_NO_SUCH_TID WARNING: Leaf page 230142 references data > page tid (page=249527, line=11). > However, the specified tid does not exist in this file. > W_DM503D_NO_SUCH_TID WARNING: Leaf page 230142 references data > page tid (page=249527, line=12). > However, the specified tid does not exist in this file. > W_DM503D_NO_SUCH_TID WARNING: Leaf page 230142 references data > page tid (page=249527, line=13). > However, the specified tid does not exist in this file. > W_DM5030_NOT_LEAF_PG WARNING: Page 318094 should be a btree leaf > page, but is not marked as one. > W_DM5019_LEAF_CHAIN_DUPLICATE WARNING: The leaf page sideways > pointer chain is broken at leaf page # 250715. > This is because the chain points to an earlier member (ie, is circular) > or because it points to an unreferenced leaf page. Neither case is legal. > W_DM501B_UNREF_LEAF_FROM_CHAIN WARNING: About 55797 Leaf page(s) > are not referenced in the leaf page sideways ptr chain. > W_DM500C_ORPHAN_DATA_PAGE WARNING: data page 42482 is an unreferenced > page (or orphan). All data on this > page or any overflow pages chained to it is effectively lost. > W_DM500C_ORPHAN_DATA_PAGE WARNING: data page 42483 is an unreferenced > page (or orphan). All data on this > page or any overflow pages chained to it is effectively lost. > S_DU04CC_TABLE_OP_DONE VERIFYDB: TABLE/XTABLE operation on table > stu_evt_txt, database sfaprod is complete. > > Regards, > > Jim Yang > SFA, Sask. Edu. > Email: jim.yang@sasked.gov.sk.ca > Tel.: (306) 787 - 2656 (O) / 584 - 3269 (H) Hi Jim, Ohhh, this takes me back to a very unpleasant place. The last time I saw something like this we were also getting BAD_ATTRIBUTE and IDX_CHAIN_BROKEN errors as well. The former were the result of (believe this or not) the table description of iirelation being copied in to a data item in the table. an integer item (for example) on one row would suddently have its value reset to 'reltid ...'. We also got a few other unimpressive variations on the them. The corruptions occurred randomly and at very low frequency. We never worked out why this started occurring. In the end we transferred the databases to a new host and the problems went away. We found that BAD_ATTRIBUTE errors could be fixed by using the tid to exactly grab the errant row. Fortunatly in all cases we were able to deduce what the correct values for the corrupted data were. IDX_CHAIN_BROKENS and CIRCULAR_LEAF_CHAIN should be fixable by restructuring the table or remodifying any indexes! However, its a long time since then, and I suspect that before you do a restructure you should do an ascii unload of the table. Try reloding the table to a dummy database and see if anything explodes during: a. The copy in b. The modify and indexing on the table. Then run verifydb on the table in the dummy database. See if this has fixed the problem. Remember that verifydb only reports really gross errors. Are there any other sanity checks you can run on the table to ensure the referential integrity of your database? If the table in the dummy database passes muster then you may as well simply restructure the table in the real database. Best of luck, Martin Bowes
© William Yuan 2000
Email William