Informix Error -435
-435 Time-out value must be -1 or greater.
You provided an incorrect time-out value for your callback function/routine in IBM Informix ESQL/C or ESQL/COBOL. Check that your time-out value is -1 or greater.
Oninit® Troubleshooting Guidance
Reasons / Common Causes
-435 fires when a time-out value passed to a callback function/routine in ESQL/C or ESQL/COBOL
falls outside the valid range: it must be -1 (conventionally meaning "wait indefinitely") or
any value 0 or greater (a bounded wait in some time unit).
- A negative time-out value other than
-1— e.g.-2or-30, which aren't valid. - An uninitialized variable used as the time-out argument, containing garbage/negative memory content rather than a deliberately chosen value.
- Confusing time-out semantics from a different API or library, where a different sentinel
value (like
0meaning "no wait" versus "wait indefinitely") was assumed.
Solutions / Resolution
- Set the time-out value to
-1(wait indefinitely) or any non-negative value, per the official guidance. - Check that the variable supplying the time-out value is properly initialized before the callback registration, rather than relying on default/garbage memory content.
- Confirm the intended time-out semantics against the actual ESQL/C or ESQL/COBOL documentation for the specific callback being used, rather than assuming conventions from a different API.
Examples
Using -1 for an indefinite wait
int timeout = -1; /* wait indefinitely */
/* pass timeout to the relevant ESQL/C callback registration */
Using a valid bounded wait
int timeout = 30; /* wait up to 30 (time units defined by the
specific callback's documentation) */
The disallowed invalid value
int timeout = -5; /* -435: only -1 or values >= 0 are valid */
Diagnostic Checks
- Check the actual value being passed as the time-out argument at the point of the failing call.
- Confirm the variable supplying it is properly initialized.
Related Errors / Related Topics
- -378 — "Record currently locked by another user." A related concept in the same general
waiting/locking-behavior area, though about lock-wait mode (
SET LOCK MODE TO WAIT) rather than a callback's time-out argument specifically.
The valid range is simple: -1 for indefinite, or any non-negative value — check for an
uninitialized variable first if a genuinely out-of-range negative value is showing up
unexpectedly.