Informix Error -33075: Cannot use user-defined routines in client collection/row constructors.
Cause and resolution
Cannot use user-defined routines in client collection/row constructors.
The user has tried to call a user-defined routine function in a ROW or COLLECTION constructor for a client collection or row host variable. Check the syntax of the statement and change the statement so that it does not call a user-defined routine. User-defined routines can be executed only on the server.
Oninit® Troubleshooting Guidance
Reasons / Common Causes
-33075 fires when a client collection or row host-variable constructor calls a user-defined routine — per the official guidance, UDRs can execute only on the server.
- A user-defined routine called inside a
ROW/COLLECTIONconstructor for a client host variable, per the official guidance — the direct, only cause.
Solutions / Resolution
- Change the statement so it doesn't call a user-defined routine in the client constructor, per the official guidance.
Examples
N/A
No specific triggering statement is documented beyond a UDR call inside a client collection/row constructor.
Diagnostic Checks
- Check the flagged
ROW/COLLECTIONconstructor for a user-defined routine call, and move that logic to run on the server instead.
Related Errors / Related Topics
- -33074 — "Explicit cast, either with CAST keyword or (::) operator, is not allowed in client collections." A related client-collection-literal restriction, on explicit casts rather than UDR calls.
A client collection/row constructor called a user-defined routine, which can only run on the server — remove the UDR call from the client-side constructor.