Informix Error -622: Error on locating constraint index index-name.
Cause and resolution
Error on locating constraint index index-name.
This internal error shows that the database server is trying to test a new or updated row for uniqueness under a UNIQUE or PRIMARY KEY constraint, but the index that implements the constraint cannot be found. Check the accompanying ISAM error code for more information. Corruption of the system catalog tables or the root dbspace or a hardware problem might have occurred. If the error recurs, note all circumstances and contact IBM Informix Technical Support.
Oninit® Troubleshooting Guidance
Reasons / Common Causes
-622 is flagged by the official text as an internal error: the server is testing a new or updated
row for uniqueness under a UNIQUE/PRIMARY KEY constraint, but can't find the index that
implements it — per the official guidance, possibly reflecting corruption of the system-catalog
tables, the root dbspace, or a hardware problem.
- System-catalog corruption, per the official guidance — the constraint's catalog entry pointing at an index that's no longer actually present or accessible.
- Root dbspace corruption, per the official guidance — since catalog-related structures live there.
- A hardware problem, per the official guidance, underlying either form of corruption.
- An underlying ISAM-level error while locating the index, per the official guidance's pointer to checking the accompanying ISAM error code.
Solutions / Resolution
- Check the accompanying ISAM error code, per the official guidance, for the specific underlying reason.
- Have the database server administrator check for system-catalog or root dbspace
corruption, using the same class of diagnostic utility as -620 (
oncheck/onutil/tbcheck), given the shared corruption-related framing. - Check for hardware errors, per the official guidance, via OS-level hardware/disk logs.
- If this recurs, note all circumstances and contact IBM Informix Technical Support, per the official guidance.
Examples
Checking for catalog/root dbspace corruption
$ oncheck -cc
-- or the platform-appropriate equivalent, checking system-catalog and
-- root dbspace consistency, given the constraint-index lookup failure
Diagnostic Checks
- Check the accompanying ISAM error code first, per the official guidance.
- Run a catalog/root dbspace consistency check (
oncheck/onutil/tbcheck), given the official guidance's framing around system-catalog or root dbspace corruption.
Related Errors / Related Topics
- -620 — "Unable to update next extent size." Another internal error pointing at possible root dbspace corruption, in the same general family.
- -621 — "Unable to update new lock level." Another internal error pointing at possible hardware/shared-memory problems.
An internal constraint-index lookup failure during a uniqueness check — check for system-catalog or root dbspace corruption, same diagnostic path as -620.