IBM Data Server Driver for JDBC and SQLJ enhancements for Db2 11.5.6

The IBM Data Server Driver for JDBC and SQLJ contains a number of major enhancements for the Db2 11.5.6 base product, its mod packs, and its fix packs. Each fix pack for a release is cumulative; that is, a particular fix pack contains the enhancements and new features that were included in previous fix packs.

Attention: This mod pack release is currently available for the following Db2 products:

11.5.6 enhancements

Table 1. IBM Data Server Driver for JDBC and SQLJ enhancements and new capabilities in 11.5
Enhancement Description
Improved performance when prefetching data from large data sets When a query is issued to fetch a large amount of data from a table in a Db2 database, the JDBC or SQLJ driver fetches the result set in multiple blocks. In Db2 11.5.5 and older versions, there is significant delay in waiting for the data retrieved in each block to be processed before the driver fetches the next block.
With the release of Db2 11.5.6, the JDBC or SQLJ driver no longer waits for the data in one block to be retrieved before fetching the next block. Instead of waiting for a reply from the Db2 server, the driver now uses that time to process data. This improves the overall performance of the driver while fetching large data sets.
These changes have resulted in the creation of two new JDBC and SQLJ configuration properties, db2.jcc.queryPrefetch and db2.jcc.override.queryPrefetch.
Remote logging using Elastic Search To address the need for one central location for collecting logs, a centralized logging system that can store driver logs to a file on a remote machine running with Elastic search.
This feature is controlled from the global properties file, through the db2.jcc.enableRemoteLogging and db2.jcc.remoteLoggingUrl properties.
Sysplex workload balancing now enabled through the global properties file Customers moving from non-sysplex environments to a Db2 pureScale® sysplex environment, they can now enable sysplex work load balancing without changing their application code.
The enableSysplexWLB property can now be set to TRUE in the global properties file.
Ability to configure driver to check for client-side Db2 license first In Db2 11.5.5 and older version clients, when establishing a connection, the driver checks for the server-side Db2 license first. If a server-side license is not found, it then looks for a client-side license.
With the release of Db2 11.5.6, you can configure your JDBC driver to check for the client-side license first.
A new configuration parameter, useClientSideLicenseFirst has three settings:
  • When set to 1, the driver checks for a client-side license and, if present, validates the connection. It no longer checks for the server-side license.
  • When set to 2, the driver checks for a server-side license with which to validate the connection. If no server-side license is found, it proceeds to look for a client-side license for validating the connection. This is the behavior for 11.5.5 and earlier versions of the Db2 client.
  • A setting of 0 represents a NOT_SET state for the property. This results in the same behavior as the 2 setting, with the driver looking for the server-side license first.
Support for the db2JccConfiguration.properties file in db2connectactivate operation The db2connectactivate utility activates the Db2 Connect Unlimited Edition license on the Db2 for z/OS® or Db2 for i server to avoid applying the Db2 Connect license on each Db2 database client that connects directly to the server.
During activation, some properties are added by providing them as script parameters, for example, -trace, -bind, etc., but not all properties are supported through parameters. If a customer wants to use Transport Layer Security (TLS, formerly SSL) properties while running the db2connectactivate utility, it is not supported in Db2 11.5.5 and older clients.
With the release of Db2 11.5.6, when the DB2JccConfiguration.properties file is placed in the same folder as the db2connectactivate.jar file, any properties that are in the DB2JccConfiguration.properties file are used when a connection is established.
Connection pooling feature now available An application can request that connections are pooled. Methods and properties are available in the DB2ConnectionPool() class for managing pooled connections.
Hostname validation now available for Db2 clients Hostname validations is now available for Db2 11.5.6 client software.
When negotiating a TLS connection to a Db2 server, a Db2 client now has the ability to validate the hostname in the server certificate against their list of servers to which they are configured to connect.
To support this feature, the SSLClientHostnameValidation configuration keyword is now available for JDBC and SQLJ clients.