Static SQL cache is removed
The Static SQL Cache has been removed.
Before version 2.00, the size of the static SQL cache is defined by an FGLPROFILE entry:
dbi.sql.static.optimization.cache.size = max
This entry was provided to optimize SQL execution without touching code using a lot of static SQL statements, especially when using non-Informix® database servers where the preparation of static SQL statements is slower than with Informix. This is useful for fast migrations, but there were a lot of side effects and unexpected errors. On the other hand, recent database client libraries provide a "deferred prepare" option, to postpone the preparation of the SQL statement to the first statement execution, making prepared SQL cache useless.
Starting with version 2.00, the Static SQL Cache has been removed for the reasons described.
Programs continue to run without changing the code. With some database brands, SQL statement
execution can be optimized by using PREPARE
/ EXECUTE
, when the
SQL statement needs to be executed many times. In such case, best performance improvement can be
achieved by using a transaction block (BEGIN WORK
/ COMMIT WORK
),
and thus avoid auto-commits at each EXECUTE
.