Kbase P10644: Error (1422) when doing a FOR EACH with an specific index
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  2/17/2009 |
|
Status: Verified
SYMPTOM(s):
SYSTEM ERROR: Index in for recid could not be deleted. (1422)
Error happens when doing queries with an specific index.
FACT(s) (Environment):
The -F startup parameter was used to access the DB.
There are no duplicate records.
All Supported Operating Systems
Progress 8.x
Progress 9.x
OpenEdge 10.x
CAUSE:
When the -F startup parameter was used it created inconsistencies. In this case in one index where a record is missing.
FIX:
TYPE:
proutil <your db> -C idxfix
FOLLOW THE NEXT IDXFIX DIALOG:
Index Fix Utility
1. Scan records for missing index entries.
2. Scan indexes for invalid index entries.
3. Both 1 and 2 above.
4. Cross-reference check of multiple indexes for a table.
5. Build indexes from existing indexes.
6. Delete one record and it's index entries.
7. Quit.
Enter selection:
ANSWER -> "3"
Select one of the following:
All - Check all the indexes
Some - Check only some of the indexes
Quit - Quit, do not check
Enter your selection:
ANSWER -> "Some"
Enter the name of table containing the index.
or enter ! if you don't want to fix more indexes
Table name:
ANSWER -> <YOUR TABLE>
Index name:
ANSWER -> <YOUR INDEXES FOR THE TABLE>
Enter the name of table containing the index.
or enter ! if you don't want to fix more indexes
Table name:
ANSWER -> "!" TO END THE INDEXES YOU WANT TO FIX
**** The following indexes will be fixed:
Table: customer
Index: name
Is this correct? (y
)
ANSWER -> "y"
Validate recids for index entries.
Is this correct? (y
)
ANSWER -> "y"
Fix indexes on Scan.
Is this correct? (y
)
ANSWER -> "y"
Provide a range of records to scan through.
Type All or the recid to start the scan at.
ANSWER -> "All"
Is this correct? (y
)
ANSWER -> "y"
Index 15 (Customer, Name): 83 keys.
Scan the database records for missing keys.
Record scan complete: 83 keys read.
1 indexes, 230 blocks, 83 keys checked.
Index fix completed successfully.