It is not unexpected that IDXCHECK Option 3 detects 1422 issues but takes longer than IDXFIX Option 3. The utilities process the comparable Options in a different order. Execution time varies with where/what the corruption is on and therefore which utility will report it in a shorter period of time:
- IDXCHECK processes Options 1 & 2 first, then processes Options 3 & 4
- IDXFIX with Option 3 processes Option 2 (the same as Option 3 in IDXCHECK) first, then Option 1 (the same as Options 1 & 2 in IDXCHECK).
To Recap:
Online IDXCHECK:
Validation Options:
1 - physical consistence of index blocks # on by default
2 - validate keys for each record # on by default
3 - validate record for each key
4 - Validate key order (since 10.1C01) # on by default
...
L - Lock tables during the check
Online IDXCHECK Process Order:
- Option 1 & 2 (scan records)
- Option 3 & 4 (scan indexes)
Option 4 detects physical index corruption in addition to validating key order
Online IDXFIX:
Validation Options:
1. Scan records for missing index entries.
2. Scan indexes for invalid index entries.
3. Both 1 and 2 above.
Online IDXFIX Process Order:
- Option 2 (scan indexes): Scan index first same as IDXCHECK Option 3; and as IDXCHECK Option 3 & Option 4 (if offline)
- Option 1 (scan records): Same as Option 1 & 2 in IDXCHECK
Running Option 3 (indexes and records) when indices and data are in two different Areas, since IDXFIX can selectively be run to fix the index:
"Fix indexes on Scan", false positive are not ideal. It is better either:
- Select all indexes: "All (a/A) - Choose all the indexes", or
- Run either Option 1 OR Option 2 and provide it with an Area number for the indexes not the table: "By Area (r/R) - Choose indexes in selected areas" IDXFIX will get the matching record for the selected index found in the Area that supplied by the user.