IBM Informix

Release and Documentation Notes for IBM Informix JDBC Driver

3.50.JC6, December 2009

Contents

Release Notes
Overview
IBM Informix Server Compatibility
Configuration
What's New in Version 3.50.JC3 for the Informix JDBC Driver
Savepoint Support in JDBC Applications
What's New in Version 3.50.JC1 for the Informix JDBC Driver
Support for Service Name in SQLHOSTS and Connection URLs
Database Connections in the Demo Programs
Fixed Problems
Defects fixed in Version 3.50.JC6
Defects fixed in Version 3.50.JC5
Defects fixed in Version 3.50.JC4
Defects fixed in Version 3.50.JC3R1
Defects fixed in Version 3.50.JC3
Defects fixed in Version 3.50.JC2
Defects fixed in Version 3.50.JC1
Limitations
XML Parser
Documentation Notes
Documentation Notes and Corrections
Notices
Trademarks

Release Notes

Overview

The purpose of these release notes is to make you aware of any special actions required to configure and use the IBM® Informix® JDBC Driver on your computer. This file also describes new features and feature differences from earlier versions of this product and other IBM Informix products and how these differences affect current products. This release notes document is not intended to be all-inclusive; it should be used as an addendum to the IBM Informix JDBC Driver Programmer's Guide, which provides thorough information about product features and behavior. These release notes are written for Java™ programmers who use the JDBC API to connect to IBM Informix databases via the IBM Informix JDBC Driver.

IBM Informix Server Compatibility

IBM Informix JDBC Driver 3.50 is supported with the following server versions:

Configuration

You must have JRE 1.4.2 or later installed to use the IBM Informix JDBC Driver. Refer to http://java.sun.com/products/jdbc/ for details.

The IBM Informix JDBC driver is tested to run on these platforms:

What's New in Version 3.50.JC3 for the Informix JDBC Driver

The Informix JDBC Driver, Version 3.50.JC3, supports the following new feature.

Savepoint Support in JDBC Applications

Informix Dynamic Server (IDS) now supports using savepoints within the statements of an SQL transaction. See the IDS release notes for a description of this feature.

The following methods supplied by the JDBC 3.0 specification are now valid in this release:

The methods that return multiple result sets are now the only standard methods the JDBC 3.0 specification that are not currently supported by the IBM Informix JDBC driver.

In addition, the following new method of the IfxConnection class can define a savepoint whose identifier is unique in the current connection:

Two new classes have been added to JDBC to support savepoint objects:

What's New in Version 3.50.JC1 for the Informix JDBC Driver

Changes were made in the 3.50.JC1 version of Informix JDBC driver to allow you to use the following features of IDS, version 11.50. See the IDS release notes for that version to learn more about the new features:

The following new feature is available in the Informix JDBC Driver, 3.50.JC1.

Support for Service Name in SQLHOSTS and Connection URLs

You can now specify the service name of the Informix database server instead of the port number when configuring connections in the sqlhosts file or a connection URL.

Database Connections in the Demo Programs

Except for the pickaseat demo, the examples listed in the IBM Informix JDBC Driver Programmer's Guide, Version 3.50, use the DriverManager.getConnection() method to get a database connection. Sun Microsystems recommends using a DataSource object instead. For more information, refer to the Sun documentation and to the README.TXT file in the demo/pickaseat directory.

Fixed Problems

The following are required. Otherwise, the java.net library might throw a java.net.UnknownHostException when connecting to an IDS server using a host with an ipV6 address:

or

Defects fixed in Version 3.50.JC6

The following defects were corrected in version 3.50.JC6:

Defects fixed in Version 3.50.JC5

The following defects were corrected in version 3.50.JC5:

Defects fixed in Version 3.50.JC4

The following defects were corrected in version 3.50.JC4:

Defects fixed in Version 3.50.JC3R1

The following defect was corrected in version 3.50.JC3R1:

Defects fixed in Version 3.50.JC3

The following defect was corrected in version 3.50.JC3:

Defects fixed in Version 3.50.JC2

The following defects were corrected in version 3.50.JC2:

Defects fixed in Version 3.50.JC1

The following defects were corrected in version 3.50.JC1:

Limitations

Sun JDK 1.4.2 does not support the codeset CP943.

Refer to the IBM Informix JDBC Driver Programmer's Guide for complete list of unsupported methods.

XML Parser

The Xerces XML library xerces.jar has been removed from distribution with the IBM Informix JDBC driver 3.10 and later. Xerces is an open source library that is freely available for download from the following location:

http://www.alphaworks.ibm.com/tech/xml4j

Documentation Notes

Documentation Notes and Corrections

This section describes feature and performance topics not covered in the IBM Informix JDBC Driver Programmer's Guide or modified since publication.

Handling Transactions
In the section "Handling Transactions" in Chapter 3, the text "JDBC applications can create, destroy, or rollback to savepoint objects through the following standard JDBC methods of class IfxConnection:" is followed by a list of the methods. There is an error in that list. Instead of rollbackSavepoint( ), the last method in the list should be rollback(savepoint).
Avoid Errors Transferring Large Objects
In the section "Smart Large Object Data Types" in Chapter 4, a new section has been added about avoiding errors when you transfer large objects.

The IFX_LOB_XFERSIZE environment variable is used to specify the number of bytes in a CLOB or BLOB to transfer from a client application to the database server before checking whether an error has occurred. The error check occurs each time the specified number of bytes is transferred. If an error occurs, the remaining data is not sent and an error is reported. If no error occurs, the file transfer will continue until it finishes.

For example, if the value of IFX_LOB_XFERSIZE is set to 10485760 (10 MB), then error checking will occur after every 10485760 bytes of the CLOB or BLOB is sent. If the IFX_LOB_XFERSIZE environment variable is not set, the error check occurs after the entire BLOB or CLOB is transferred.

The valid range for the IFX_LOB_XFERSIZE environment variable is from 1 to 9223372036854775808 bytes. The IFX_LOB_XFERSIZE environment variable is set on the client.

You should adjust the value of IFX_LOB_XFERSIZE to suit your environment. Set the IFX_LOB_XFERSIZE environment variable low enough so that transmission errors of large BLOB or CLOB data types are detected early, but not so low that excessive network resources are consumed.

Enabling unicode collation by Java/JDBC client applications
In the section "Support for IBM Informix GLS Variables" in Chapter 6, the following information about the GL_USEGLU environment variable has been added:

To enable Unicode collation by Java/JDBC client applications using the International Components for Unicode (ICU), specify GL_USEGLU=1 in the connection string before connecting to a Dynamic Server instance. This enables the server to utilize advanced Unicode converters that are required to work with Java.

Avoid Application Hanging Problems (HP-UX only)
In the section "Managing Performance" in Chapter 7, the following information about the PTHREAD_COMPAT_MODE environment variable has been added:

If your JDBC application hangs on your HP-UX server, check the setting for the PTHREAD_COMPAT_MODE environment variable on the HP-UX server. The PTHREAD_COMPAT_MODE environment variable should be set to 1. This variable tells the pthread library (libpthread) to run in 1 X 1 mode instead of MxN mode. 1 X 1 is the default mode now on HP-UX. Setting this environment variable should resolve the hang problem.

Notices

This information was developed for products and services offered in the U.S.A.

IBM may not offer the products, services, or features discussed in this document in all countries. Consult your local IBM representative for information on the products and services currently available in your area. Any reference to an IBM product, program, or service is not intended to state or imply that only that IBM product, program, or service may be used. Any functionally equivalent product, program, or service that does not infringe any IBM intellectual property right may be used instead. However, it is the user’s responsibility to evaluate and verify the operation of any non-IBM product, program, or service.

IBM may have patents or pending patent applications covering subject matter described in this document. The furnishing of this document does not give you any license to these patents. You can send license inquiries, in writing, to:

IBM Director of Licensing
IBM Corporation 
North Castle Drive 
Armonk, NY 10504-1785
U.S.A.

For license inquiries regarding double-byte (DBCS) information, contact the IBM Intellectual Property Department in your country or send inquiries, in writing, to:

Intellectual Property Licensing
Legal and Intellectual Property Law
IBM Japan Ltd.
1623-14, Shimotsuruma, Yamato-shi
Kanagawa 242-8502 Japan

The following paragraph does not apply to the United Kingdom or any other country where such provisions are inconsistent with local law: INTERNATIONAL BUSINESS MACHINES CORPORATION PROVIDES THIS PUBLICATION "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Some states do not allow disclaimer of express or implied warranties in certain transactions, therefore, this statement may not apply to you.

This information could include technical inaccuracies or typographical errors. Changes are periodically made to the information herein; these changes will be incorporated in new editions of the publication. IBM may make improvements and/or changes in the product(s) and/or the program(s) described in this publication at any time without notice.

Any references in this information to non-IBM Web sites are provided for convenience only and do not in any manner serve as an endorsement of those Web sites. The materials at those Web sites are not part of the materials for this IBM product and use of those Web sites is at your own risk.

IBM may use or distribute any of the information you supply in any way it believes appropriate without incurring any obligation to you.

Licensees of this program who wish to have information about it for the purpose of enabling: (i) the exchange of information between independently created programs and other programs (including this one) and (ii) the mutual use of the information which has been exchanged, should contact:

IBM Corporation 
J46A/G4 
555 Bailey Avenue 
San Jose, CA 95141-1003 
U.S.A.

Such information may be available, subject to appropriate terms and conditions, including in some cases, payment of a fee.

The licensed program described in this information and all licensed material available for it are provided by IBM under terms of the IBM Customer Agreement, IBM International Program License Agreement, or any equivalent agreement between us.

Any performance data contained herein was determined in a controlled environment. Therefore, the results obtained in other operating environments may vary significantly. Some measurements may have been made on development-level systems and there is no guarantee that these measurements will be the same on generally available systems. Furthermore, some measurements may have been estimated through extrapolation. Actual results may vary. Users of this document should verify the applicable data for their specific environment.

Information concerning non-IBM products was obtained from the suppliers of those products, their published announcements or other publicly available sources. IBM has not tested those products and cannot confirm the accuracy of performance, compatibility or any other claims related to non-IBM products. Questions on the capabilities of non-IBM products should be addressed to the suppliers of those products.

All statements regarding IBM’s future direction or intent are subject to change or withdrawal without notice, and represent goals and objectives only.

All IBM prices shown are IBM’s suggested retail prices, are current and are subject to change without notice. Dealer prices may vary.

This information contains examples of data and reports used in daily business operations. To illustrate them as completely as possible, the examples include the names of individuals, companies, brands, and products. All of these names are fictitious and any similarity to the names and addresses used by an actual business enterprise is entirely coincidental.

COPYRIGHT LICENSE

This information contains sample application programs in source language, which illustrate programming techniques on various operating platforms. You may copy, modify, and distribute these sample programs in any form without payment to IBM, for the purposes of developing, using, marketing or distributing application programs conforming to the application programming interface for the operating platform for which the sample programs are written. These examples have not been thoroughly tested under all conditions. IBM, therefore, cannot guarantee or imply reliability, serviceability, or function of these programs. The sample programs are provided "AS IS", without warranty of any kind. IBM shall not be liable for any damages arising out of your use of the sample programs.

Each copy or any portion of these sample programs or any derivative work, must include a copyright notice as follows:

If you are viewing this information softcopy, the photographs and color illustrations may not appear.

Trademarks

IBM, the IBM logo, and ibm.com® are trademarks or registered trademarks of International Business Machines Corp., registered in many jurisdictions worldwide. Other product and service names might be trademarks of IBM or other companies. A current list of IBM trademarks is available on the Web at "Copyright and trademark information" at >http://www.ibm.com/legal/copytrade.shtml.

Adobe®, the Adobe logo, and PostScript® are either registered trademarks or trademarks of Adobe Systems Incorporated in the United States, and/or other countries.

Intel, Itanium, and Pentium® are trademarks or registered trademarks of Intel Corporation or its subsidiaries in the United States and other countries.

Java and all Java-based trademarks are trademarks of Sun Microsystems, Inc. in the United States, other countries, or both.

Linux is a registered trademark of Linus Torvalds in the United States, other countries, or both.

Microsoft®, Windows, and Windows NT® are trademarks of Microsoft Corporation in the United States, other countries, or both.

UNIX® is a registered trademark of The Open Group in the United States and other countries.

Other company, product, or service names may be trademarks or service marks of others.

Contact support: http://www.ibm.com/software/data/informix/ids/support/

© Copyright IBM Corp. 2008, 2009