What’s in Your ODBC Driver? A 2024 Update

ODBC with Db2 for IBM iSince IBM announced Yum support for installing the IBM i Db2 ODBC driver, as documented in our 2022 tutorial, users can update their driver more easily.

To help users determine what’s changed, IBM maintains a list of fixes and enhancements for each IBM i ODBC driver release.

IBM i ODBC driver update pages

IBM i, Mac, Linux, and Windows are given their own IBM i ODBC driver update pages:

Two kinds of updates

The update pages (all except Windows) contain two main update sections:

  • APAR Fixes: fixes based on customer support requests
  • Enhancements and Internal Fixes: fixes made on the initiative of the IBM driver team

Per the IBM i Db2 ODBC driver update page, here are a few notable recent fixes and enhancements:

Selected fixes and enhancements

Version: 1.1.0.28 (May 2024 build)
  • Fix: “OSP-UNPRED A PHP application setting ODBC_AUTOCOMMIT to FALSE does not exhibit expected behavior.”
  • Fix: “OSP-UNPRED Byte count is off causing translation issues.”
  • Fix: “OSP ODBC driver might crash 0XC0000005 0X0004DB64
  • Fix: “OSP-INCORROUT Attempt to call a stored procedure which contains a “specific” name fails with return code -100.
  • Fix: “OSP-UNPRED LINUX ODBC – Library list shortened intermittently.”
Version: 1.1.0.27 (November 2022 build)
  • “Add TLS (SSL) support using OpenSSL. This requires that the OpenSSL libraries provided by yum are installed, eg libopenssl1_1. OpenSSL version 1.1.1 is supported. Unlike with GSKit on Windows, FIPS mode is not supported.”
  • “Add EnableKeepAlive connection string keyword to enable TCP keepalive support as an alternative to using cwbcopwr. Setting to 0 disables keepalives, 1 enables keepalives, and 2 uses the cwbcopwr value (default).”
  • “Add Timeout connection string keyword to set the socket timeout (in seconds) when communicating with the server. This is an alternative to using the SQL_ATTR_CONNECTION_TIMEOUT connection attribute or cwbcopwr.”
  • “Add LoginTimeout connection string keyword to set the connection timeout (in seconds) when initially connecting and logging in to the server. This is an alternative to using the SQL_ATTR_LOGIN_TIMEOUT connection attribute.”
  • “Fix handling of QueryStorageLimit=*NOMAX. Previously, this would get interpreted as if 0 had been specified.”
Version 1.1.0.26 (May 2022 build)
  • “Add support for IBM i 7.5 PWDLVL 4”
  • “Add support for IBM i 7.5 BOOLEAN SQL data type”
  • “SQL_DESC_OCTET_LENGTH and SQL_DESC_DISPLAY_LENGTH now take in to account any expansion that might occur due to CCSID conversion. For instance, a CHAR(10) EBCDIC column will now return 20 instead of 10 for the above attributes when the client is in UTF-8 since extended ASCII characters take 2 bytes in UTF-8 but only 1 byte in EBCDIC. This allows retrieving the full column data in PHP’s odbc and pdo_odbc extensions, especially on IBM i 7.4 and beyond where the default PASE CCSID is 1208.

    SEIDEN NOTE: The “SQL…LENGTH” enhancement fixed a bug affecting “accented” characters and other characters represented by multiple bytes in UTF-8 (CCSID 1208).
Version 1.1.0.15 (May 2021 build)
  • “Add TrimCharFields connection option to trim trailing blank characters when retrieving CHAR and GRAPHIC fields. Setting this option to 1 will enable trimming, while setting it to 0 (default) will disable trimming.”

Thanks to IBM’s Korinne Adler for telling me about these IBM update pages.

0 replies

Leave a Reply

Want to join the discussion?
Feel free to contribute!

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.