Informix

 View Only

 Informix Upgrade Issue: "Numeric value out of range" Error in C++ Application

CSMG 4's profile image
CSMG 4 posted Thu April 24, 2025 04:13 PM

Hello everyone,

After upgrading from Informix 10 to Informix 14 and the Client SDK from version 3.00 to 4.10, I'm encountering the State:22003,Native:-11025 ("Numeric value out of range") error. This error did not occur with the previous versions of Informix and the driver, and my program is developed in C++.

Has anyone else experienced this issue after a similar upgrade? Do you have any insights into what might be causing this change in behavior and how I might resolve it in my C++ code or in the configuration of the new driver? Any suggestions or experiences would be greatly appreciated. Thanks!

Art Kagel's profile image
Art Kagel IBM Champion

CSMG 4:

FYI: Note that the version of the CSDK that was released with v14.10 of the engine is CSDK v4.50 (not 4.10 - which was released with engine version 12.10).

I am not certain that this is the cause of the issue though. Do you know what the query was that triggered the error return? I ask because certain catalog and sysmaster tables have columns that were altered from INT to INT8 or even BIGINT in later releases after v10.00, so if you have not modified the C++ code to change the receiving host variable types that may be what is causing this issue.

Art

CSMG 4's profile image
CSMG 4

Thanks for the response, Art.

That's a good point about changes in the system tables. However, in my case, the "Numeric value out of range" error occurs when trying to perform an `Update()` on a C++ `CRecordset` object that operates on a user-defined table, not on system or catalog tables. The flow is: I open the recordset, edit a field, and the error is thrown when calling `Update()`. This makes me suspect that the difference in how the ODBC driver (now 4.10) handles writing data back might be key. I would like to test with the 4.50 driver, but unfortunately, my current development environment is 32-bit, and I don't have a compiled version of my program to test on a 64-bit system. Could there be any specific configuration in the 4.10 driver that I should review, or any known differences in its behavior when performing `Update()` operations compared to previous driver versions?

Andreas Legner's profile image
Andreas Legner IBM Champion

May I ask for the precise version of your Informix driver: 4.10.???

I'm seeing an old defect causing 11025 in very early releases of 4.10...

CSMG 4's profile image
CSMG 4

Thanks for the follow-up. I have specifically used the following versions of the Client SDK 4.10 driver: **4.10TC15** and **4.10TC16W1**. I haven't been able to find or download any more recent versions within the 4.10 branch, and I'm also unsure if newer releases exist for this specific minor version.

Andreas Legner's profile image
Andreas Legner IBM Champion

Those certainly are new enough...