Informix Online Documentation |
Date: 06/13/00
Version: 9.40
The purpose of these release notes is to make you aware of any special actions required to configure and use Informix ESQL/C on your computer. This file also describes new features and feature differences from earlier versions of this product and other Informix products, and how these differences affect current products. In addition, this file contains information about known bugs and their workarounds.
This release notes document is not intended to be all-inclusive; it should be used as an addendum to the Informix ESQL/C Programmer's Manual, which provides thorough information about product features and behavior.
These release notes are written for the following audience:
Version 9.40 of Informix ESQL/C has been tested with the following database server configurations:
Informix ESQL/C includes source code files for many of the examples in the Informix ESQL/C Programmer's Manual. The installation process copies these source code files into the following directory: $INFORMIXDIR/demo/esql
For more information about the example files for Informix ESQL/C, see the Introduction to the Informix ESQL/C Programmer's Manual.
Bugs 115397, 115484 and 117794 are fixed by this ESQL/C release and related fixes put into server Version 9.30. The scope of a prepared statement is now global across local as well as XA mode transactions. For a complete fix, the two must be used together. However, as part of this fix, a workaround has been included in ESQL/C such that if it is used in conjunction with any previous version of 9.x, or any version of 7.x, the behaviour is still correct. This is done by re-preparing statements as needed. Statements are re-prepared as infrequently as possible to try to lessen the impact of such operations.
Note that bug 115397 relates to performance problems caused by re- preparing statements. For servers other than 9.30 and later, there's no way around the problem.
When using XA in conjunction with a server other than 9.30 or later, the workaround requires the user to free any prepared statement in the same context in which it was created. This is to prevent server resources from being lost. An example will demonstrate:
Informix ESQL/C allows developers to specify the runtime context that will be used for a set of statements. A runtime context will hold all the thread specific data that ESQL/C must maintain, ie. connections and their current states, cursors and their current states etc.
In the current implementation of multithreaded ESQL/C the user's "context" is used for all thread specific data for the life of the thread. When a call is made into the ESQL/C libraries, a lookup is done to get the appropriate "context".
The new SQLCONTEXT definition and statements will allow the user to indicate which runtime context should be used programatically instead of having it looked up at runtime.
The following problems have been fixed since the 9.3 release.