Informix Error -9067: ACEs arithmetic stack has exceeded its bounds. The expression here is too complicated.
Cause and resolution
ACEs arithmetic stack has exceeded its bounds. The expression here is too complicated.
Reduce the complexity of the arithmetic expression. For example, divide the expression into subexpressions and assign the values of each to a variable.
Oninit® Troubleshooting Guidance
Reasons / Common Causes
-9067 fires when an arithmetic expression in the report exceeds the depth ACE's internal arithmetic stack can hold — per the official guidance.
- An overly complex arithmetic expression, per the official guidance — the direct, only cause.
Solutions / Resolution
- Reduce the complexity of the arithmetic expression, per the official guidance — for example, divide the expression into subexpressions and assign the value of each to a variable.
Examples
An overly complex expression
PRINT (a+b)*(c+d)/(e-f)*(g+h)/(i-j)*(k+l)/(m-n) -- -9067: too deep
Corrected — split into subexpressions
LET t1 = (a+b)*(c+d)/(e-f)
LET t2 = (g+h)/(i-j)*(k+l)
LET t3 = t1 * t2 / (m-n)
PRINT t3
Diagnostic Checks
- Identify the deeply nested arithmetic expression, and split it into intermediate variables.
Related Errors / Related Topics
No closely related error codes are cross-referenced for -9067 in this set yet.
An arithmetic expression was too complex for ACE's internal stack — split it into subexpressions assigned to variables.