Informix Online Documentation |
Date: 06/13/00
Version: 2.50
The purpose of these release notes is to make you aware of any special actions required to configure and use the Client SDK products 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 product manuals which provide thorough information about product features and behavior.
These release notes are written for the following audience:
You will find release notes for products available as part of the Client SDK Version 2.5 release in the following files:
The Client SDK Version 2.5 products have been tested with the following database servers:
For information about the content of this release, refer to the release notes and documentation notes for each of the Client SDK products.
It is now possible to see the these server estimates before executing a query or fetching its result rows.
mi_exec(conn, sql, flags) starts a new query on CONN, sending the command SQL to the server to be prepared for execution. The execution will happen later when you call mi_get_result(conn) or mi_query_finish(conn).
After preparing the query, the server sends the client an estimate of the number of result rows, and an estimate of the cost of execution. This information was always available in esql/c in the sqlca structure, the row count as sqlca.sqlerrd[0] and the cost as sqlca.sqlerrd[3]. The same information is now available from client libdmi by the new interface function:
mi_integer mi_estimated_query_row_count(MI_CONNECTION *);
mi_integer mi_estimated_query_cost(MI_CONNECTION *);
A similar API can be used with MI_STATEMENTs, as obtained from mi_prepare().
mi_integer mi_estimated_statement_row_count(MI_STATEMENT *);
mi_integer mi_estimated_statement_cost(MI_STATEMENT *);
The usage patterns are:
and
Setnet32 now has a new command-line option -r to read the contents of a .nfx file and display them in Setnet32. The settings must be explicitly saved using the Apply or OK buttons.
You must not install the 32-bit version and the 64-bit version of the Client SDK in the same INFORMIXDIR directory.
Some of the Client SDK files, such as ESQL/C and ODBC, include example files. See the release notes for each Client SDK product to find the location of example files for that product.
This section describes the known problems with this release of the Client SDK and shows how to work around these problems. See individual product release notes for problems that are specific to each product.
PRODUCTS ON WINDOWS PLATFORMS WILL USE ENVIRONMENT VARIABLE SETTINGS AT A HIGHER PRECEDENCE THAN THE CURRENT USER'S REGISTRY OR THE INETLOGIN STRUCT
Workaround :
For Win32 client, do not set Informix specific environment variables in the Windows OS environment. If these variables are set in the OS environment, your applications will not be able to override them. In other words, your applications will not be able to use the values you specified using the setnet32 utility or set via calls to ifx_putenv(); these values will be picked up from the OS environment instead.
For the US English locale, the following problem has been fixed for Version 2.30 of the Client SDK and Connect on both Win32 and UNIX platforms.
The term "old client APIs" in the text below means pre-2.01 versions of Client SDK and Connect and all versions of the separate ESQL/C, ESQL/COBOL and Informix CLI products; the term "new client APIs" means 2.01 and later versions of Client SDK and Connect.
After the installation of Version 2.01or later of Client SDK or Connect on either Win32 or UNIX platforms, a category of already compiled applications may exhibit an error.
The shared and static libraries in both the old and new client APIs refer to message files in the directory $INFORMIXDIR/msg on UNIX and %INFORMIXDIR%\msg on Win32. The names of several message files were changed in the new client APIs to avoid conflict with the server versions of those files. For example, old client APIs distributed the message file sqli.iem and the libraries in the old client APIs referred to sqli.iem. Now the new client APIs distribute that same message file under the name of csqli.iem and the libraries in the new client APIs refer to csqli.iem.
All of the following circumstances must occur in order for this error to manifest itself:
If all of these conditions apply, then the application will continue to look for message files by their old name, for example, sqli.iem. However, the directory containing just the new client API will have those files by their new name, for example, csqli.iem. Therefore, an error message will be given.
You can use any one of the following workarounds to avoid the error:
als.iem -> cals.iem
cals.iem -> ccals.iem
csm.iem -> ccsm.iem
css.iem -> ccss.iem
eami.iem -> ceami.iem
isam.iem -> cisam.iem
miapi.iem -> cmiapi.iem
mls.iem -> cmls.iem
mls2.iem -> cmls2.iem
nals.iem -> cnals.iem
nerm.iem -> cnerm.iem
net.iem -> cnet.iem
netsrv.iem -> cnetsrv.iem
rds.iem -> crds.iem
security.iem -> csecure.iem
shell.iem -> cshell.iem
sql.iem -> csql.iem
sqli.iem -> csqli.iem
util.iem -> cutil.iem
xopen.iem -> cxopen.iem
xps.iem -> cxps.iem
itoxmsg.pam -> citoxmsg.pam
optical.iem -> coptical.iem
errmsg.txt -> cerrmsg.txt
This problem has been fixed for Version 2.3. In Version 2.3, the install process of these products will first look to see if the message files already exist by their "old" name in the target installation directory. If they already exist, nothing special will be done. If they do not already exist, a link (on UNIX) or a copy (on Win32) of each message file whose name changed will be made so that both files, like sqli.iem and csqli.iem, will always be guaranteed to exist. This fix will remain in the installation of Client SDK and Connect in all future releases of those products.
In the following notes, I-CONNECT 2.50 refers to the conn.tar file in the Client SDK Version 2.5 bundle, and ClientSDK 2.50 refers to the clientsdk.tar file in the Client SDK 2.50 bundle.
To recompile and get new functionality, you need the development version of the product (ClientSDK 2.50 tar file).
Both existing 7.2x (and 9.1x) applications will then use the Version 9.2 shared libraries, and they should all work correctly. (The 7.2x shared libraries will not be accessible by theESQL/C preprocessor.) No relinking or recompilation is required. However, only 7.2x level functionality and some bug fixes will be available if a 7.2x application is not recompiled.