Informix Error -9835: Could not find routine ID routine_ID for functional key.
Cause and resolution
Could not find routine ID routine_ID for functional key.
The routine identified by the routine ID for one or more functional key parts no longer exists in the database. The index is no longer valid and must be dropped.
Oninit® Troubleshooting Guidance
Reasons / Common Causes
-9835 fires when the routine identified by ID for one or more functional key parts no longer exists in the database — per the official guidance.
- The routine backing a functional index key part having been dropped, per the official guidance — the direct, only cause; the index is no longer valid.
Solutions / Resolution
- Drop the index, per the official guidance — it can no longer be used once the routine backing its functional key is gone.
Examples
Dropping the invalid index
DROP INDEX my_functional_index;
Diagnostic Checks
- Check the system catalog for the routine ID named in the error, confirming it no longer exists, and drop the affected index.
Related Errors / Related Topics
- -9831 — "Could not find opclass id opclass_ID while resolving compare routine for index." A related index-corruption error, on a missing operator class rather than a missing functional-key routine.
- -9832 — "Could not find routine routine_name while resolving compare routine." A related index-corruption error, on a missing comparison routine rather than a functional- key routine.
- -9833 — "Could not find extended type type_ID for index." A related index-corruption error, on a missing extended type rather than a missing functional-key routine.
The routine backing a functional index key no longer exists — drop the index.