IBM Support

PM65007: JCC3.64: IBM DATA SERVER DRIVER FOR JDBC AND SQLJ NEW RELEASE 3.64

A fix is available

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • JCC3.64: IBM DATA SERVER DRIVER FOR JDBC AND SQLJ NEW RELEASE
    3.64
    

Local fix

Problem summary

  • ****************************************************************
    * USERS AFFECTED: All Users of the IBM Data                    *
    *                 Server Driver for JDBC and SQLJ              *
    ****************************************************************
    * PROBLEM DESCRIPTION: IBM Data Sever Driver for JDBC and      *
    *                      SQLJ version 3.64.111 is provided by    *
    *                      this APAR ( JCCV364111 )                *
    *                                                              *
    *                      This APAR is applicable to IBM Data     *
    *                      Sever Driver for JDBC and SQLJ          *
    *                      for DB2 z/OS V10, DB2 z/OS V9 and       *
    *                      the alternate supplemental driver       *
    *                      for DB2 z/OS V8. ( JCCZOSDB2V10,        *
    *                      JCCZOSDB2V9, JCCZOSDB2V8)               *
    *                                                              *
    *                      This APAR delivers a new release (3.64) *
    *                      of the IBM Data Server Driver for JDBC  *
    *                      and SQLJ providing an accumulation of   *
    *                      defect fixes and enhancements.          *
    *                                                              *
    *                      Individual items are documented in the  *
    *                      APAR summary section that follows.      *
    ****************************************************************
    * RECOMMENDATION:                                              *
    ****************************************************************
    JCC sub-category keywords:
        JCCCOMMON, JCCT2ZOS, JCCT4, JCCT4XA, JCCSQLJ
    
    The following changes are delivered in this APAR:
    _______________________________________________________________
    All Connectivities: Driver added getAffectedRowCount() API on
    com.ibm.db2.jcc.DB2Statement interface to return the affected
    row count number after a successful SQL execution. The affected
    row count will have the same value that is returned by the
    database server in the SQLCA after a successful execution of
    the SQL. (wsdbu01002565)
    _______________________________________________________________
    All Connectivities: Driver improved the performance for JDBC
    API PreparedStatement.clearParameters(). (wsdbu01041918)
    _______________________________________________________________
    All Connectivities: An SQL statement with more than 2MB size
    executed by the driver results in dump files creation and the
    db2diag.log file showing invalid SQL statement length. This
    problem is fixed. (wsdbu01040802)
    _______________________________________________________________
    All Connectivities: java.sql.Timestamp.valueOf(String s) and
    com.ibm.db2.jcc.DBTimestamp.valueOfDBString(String s) should
    behave the same. However, java.sql.Timestamp.valueOf(String s)
    works with single digit month value, but the same value fails
    for com.ibm.db2.jcc.DBTimestamp.valueOfDBString(String s). This
    problem is fixed. (wsdbu01037037)
    _______________________________________________________________
    All Connectivities: When both IBM Data Server Driver for JDBC
    and SQLJ and Informix native driver are presented in the
    application classpath and the application specified
    informix-sqli protocol in the database connection url intending
    to use the Informix native driver, the IBM Data Server Driver
    may intercept the call and try to return a connection
    preventing the Informix native driver to be used. This problem
    is fixed.(wsdbu01014749)
    _______________________________________________________________
    All Connectivities: Adding a new option to DB2ConnectActivate
    to handle the secondary id. The option is activatorsqlid.
    Usage:
      java -cp <full_path_of_DB2ConnectActivate.jar>
              com.ibm.db2.jcc.DB2ConnectActivate
        -host <hostName>
        -port <port>
        -database <database>
        -user <userName>
        -password <password>
         -bind ( no | yes )
         -collection <collection_name>
         -activatorsqlid <sqlid>
         -uninstall ( no | yes )
         -trace ( no | yes )
         -help
    (wsdbu01004425)
    _______________________________________________________________
    All Connectivities: De-serialize a serialized SQLException
    object using different IBM Data Server Driver for JDBC and
    SQLJ version may result in java.lang.RuntimeException or other
    Exceptions due to incompatible Java Class. This problem is
    fixed. (wsdbu01003673)
    _______________________________________________________________
    All Connectivities: An java.lang.SecurityException occurs when
    using the driver with Java SecurityManager enabled even if all
    permissions are granted to the driver through the applicable
    security policy. Applications running with
    -Djava.security.manager option as well as all applets were
    affected. This problem is fixed. (wsdbu00708452)
    _______________________________________________________________
    Type-4 Connectivity: In a workload balancing environment, when
    the driver cannot connect to a member and returns a SQLCODE4499
    (-4499) error, the connectionErrorOccurred() method might not
    be called on the connection pool manager(registered event
    listener). As a result, the subsequent call on this connection
    will result in a SQLCODE4470 (-4470) error. This problem has
    been fixed. (wsdbu01058341, wsdbu01059324, wsdbu01058206)
    _______________________________________________________________
    Type-4 Connectivity: In a workload balancing environment, when
    all the members are not available and there are huge number of
    threads trying to failover at the same time, a massive flood of
    sockets might occur. This could result in SQLCODE4499 (-4499)
    error with message "java.net.BindException: Address already in
    use: Cannot bind". This is due to a large number of sockets are
    still in TIME_WAIT and it is reaching the resource limit on the
    client machine. In addition, SQLCODE1244 (-1224), database
    manager not accepting new requests error may also occur. This
    problem has been fixed. (wsdbu01059128)
    _______________________________________________________________
    Type-4 Connectivity: In a workload balancing environment where
    maxRetriesForClientReroute, retryIntervalForClientReroute
    properties are not set and the application has not made its
    first successful connection to the group, then the driver loops
    for 10 minutes before reporting the error. This default
    behavior has been changed now to retry five times with
    retryIntervalForClientReroute set to zero when the driver can't
    even make its first successful connection. However, if a cached
    server list or an alternate server is specified, the driver
    will retry 10 minutes during the failover. This is the new
    default behavior. (wsdbu01049788)
    _______________________________________________________________
    Type-4 Connectivity: If client application with alternate
    group enabled(enableAlternateGroupSeamlessACR=true) fails over
    from a primary group (ex: DB2 V10) to a lower version DB2
    sysplex group (ex: DB2 V9), queries start to fail. This problem
    is fixed. (wsdbu01045871)
    _______________________________________________________________
    Type-4 Connectivity: While performing failover during
    CallableStatement.executeBatch() call, the driver fails to
    replay the SQL in both workload balancing and sysplex
    environments even if its at the beginning of the transaction.
    This defect is fixed. (wsdbu01045345)
    _______________________________________________________________
    Type-4 Connectivity: In a workload balancing environment, when
    the primary member is down, the driver may repeatedly throw an
    SQLException with SQLCODE4499 (-4499) even though other members
    are available in the system. (wsdbu01045054)
    _______________________________________________________________
    Type-4 Connectivity: With sysplex enabled, when connected to a
    setup with 3 or more members, application might hang if first
    two members are brought down one by one. This problem is fixed.
    (wsdbu01043132)
    _______________________________________________________________
    Type-4 Connectivity: In a workload balancing environment, an
    SQLException with SQLCODE204 (-204) may be thrown to the
    application if a reuseDB2Connection() method is called after
    successfully failover. This problem is fixed. (wsdbu01041920)
    _______________________________________________________________
    Type-4 Connectivity: In a workload balancing environment
    against pureScale server, even after driver opened its first
    connection successfully to the primary member and had received
    the server list of more than one member, the subsequent
    connections failed to connect to any other members in the
    server list if the primary member went down. This problem is
    fixed. (wsdbu01032594)
    _______________________________________________________________
    Type-4 Connectivity: In a workload balancing environment, the
    driver has made a performance improvement by not retrying the
    connectivity to the member that is known unavailable during
    the auto failover. (wsdbu01031011)
    _______________________________________________________________
    Type-4 Connectivity: A new securityMechanism, com.ibm.db2.jcc.
    DB2BaseDataSource.TLS_CLIENT_CERTIFICATE_SECURITY, is
    introduced when connecting to zOS server. When application uses
    CLIENT_CERTIFICATE_SECURITY, the driver will use SSLSocket to
    communicate to DB2 server, and the mutual authentication will
    be done at the network layer using the TLS/SSL. If the target
    server supports this security mechanism and the mutual
    authentication is passed, a valid Connection will be returned
    to the application. If the server does not support this
    security mechanism or the connection was not authenticated
    using the TLS/SSL, the drive will throw an DisconnectException.
    (wsdbu01023931)
    _______________________________________________________________
    Type-4 connectivity: When there is an error during socket
    creation, the error reported by the driver was incorrectly
    reporting a message text that included "See attached Throwable
    for details" even there was no attached java.lang.Throwable.
    This problem is fixed. (wsdbu01006532)
    _______________________________________________________________
    Type-4 Connectivity: Driver throws SQLException with
    SQLCODE4225 (-4225) when executing a "SELECT INTO TEMP"
    statement against Informix database server. This problem is
    fixed. (wsdbu01000497)
    _______________________________________________________________
    Type-4 Connectivity: In a workload balancing environment, the
    value returned by APIs numberOfRequestsBlockedPoolMax() and
    totalTimeBlocked() from the object that is based on the
    com.ibm.db2.jcc.DB2PoolMonitor class might not be correct. This
    problem is fixed. (wsdbu01000053)
    _______________________________________________________________
    Type-4 connectivity: The properties, alternateGroupServerName,
    alternateGroupDatabaseName, and alternateGroupPortNumber, do
    not get applied to a connection when supplied through a
    java.util.Properties object to the
    java.sql.DriverManager.getConnection(url, prop) API. This has
    been fixed. (wsdbu00996633)
    _______________________________________________________________
    Type-4 Connectivity: Driver performs a seamless failover even
    when enableAlternateGroupSeamlessACR is set to false. This
    defect is fixed (wsdbu00995499)
    _______________________________________________________________
    Type-4 connectivity: When executing batch statements with no
    input data as a simple insert statement, NullPointerException
    is thrown in addBatch() API call if sendDataAsIs property is
    enabled or set to true. This issue is fixed. (wsdbu01043185).
    _______________________________________________________________
    Type-4 XA Connectivity: During auto failover scenario in a
    workload balancing environment against DB2 zOS server, an
    XAException with XAER_NOTA error may be thrown on a XA Commit
    (one phase commit) call even if the driver has successfully
    failover to a member after starting of a XA transaction. This
    problem has been fixed. (wsdbu01058658)
    _______________________________________________________________
    Type-2 z/OS Connectivity: A new DataSource/Connection property,
    currentLocaleLcCtype, is introduced to set the CURRET
    LOCALE LC_CTYPE special register on DB2 server. This property
    can only be set before Connection creation and cannot be
    changed afterwards. (wsdbu01005252)
    _______________________________________________________________
    Type-2 z/OS Connectivity: Driver is no longer overriding column
    sqltype nullable for Limited Block Fetch against DB2 z/OS V10
    due to the fact it may cause potential problem when the fetched
    column has LOB/XML type and the nullable attribute is NOT NULL.
    (wsdbu01029064)
    

Problem conclusion

  • The items described in the APAR Problem
    Summary have been resolved as noted in
    the summary and included in this APAR.
    

Temporary fix

Comments

APAR Information

  • APAR number

    PM65007

  • Reported component name

    DB2 ODBC/JDBC/S

  • Reported component ID

    5740XYR02

  • Reported release

    912

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2012-05-18

  • Closed date

    2012-11-09

  • Last modified date

    2012-12-04

  • APAR is sysrouted FROM one or more of the following:

  • APAR is sysrouted TO one or more of the following:

    UK83411 UK83412 UK83413

Modules/Macros

  •    DSNAQJBA DSNAQJBB DSNAQJB1 DSNAQJB2 DSNAQJB3
    DSNAQJB4 DSNAQJB5 DSNAQJB6 DSNAQJB7 DSNAQJB8 DSNAQJC1 DSNAQJC2
    DSNAQJC3 DSNAQJC4 DSNAQJRM DSNAQJS1 DSNAQJS2 DSNAQ3BA DSNAQ3BB
    DSNAQ3B1 DSNAQ3B2 DSNAQ3B3 DSNAQ3B4 DSNAQ3B5 DSNAQ3B6 DSNAQ3B7
    DSNAQ3B8 DSNAQ3B9 DSNAQ3CA DSNAQ3CC DSNAQ3CE DSNAQ3CF DSNAQ3CM
    DSNAQ3C0 DSNAQ3C1 DSNAQ3C2 DSNAQ3C3 DSNAQ3C4 DSNAQ3C5 DSNAQ3C6
    DSNAQ3C7 DSNAQ3C8 DSNAQ3C9 DSNAQ3E1 DSNAQ3F1 DSNAQ3F2 DSNAQ3F3
    DSNAQ3F4 DSNAQ3L2 DSNAQ3L9 DSNAQ3RM DSNAQ3S1 DSNAQ3S2 DSNAQ6CC
    DSNAQ6CE DSNAQ6CF DSNAQ6CM DSNAQ6C0 DSNAQ6C1 DSNAQ6C2 DSNAQ6C3
    DSNAQ6C4 DSNAQ6C5 DSNAQ6C6 DSNAQ6C7 DSNAQ6C9
    

Fix information

  • Fixed component name

    DB2 ODBC/JDBC/S

  • Fixed component ID

    5740XYR02

Applicable component levels

  • RA12 PSY UK83411

       UP12/11/13 P F211

  • R812 PSY UK83412

       UP12/11/13 P F211

  • R912 PSY UK83413

       UP12/11/13 P F211

Fix is available

  • Select the PTF appropriate for your component level. You will be required to sign in. Distribution on physical media is not available in all countries.

[{"Line of Business":{"code":"LOB10","label":"Data and AI"},"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSEPEK","label":"Db2 for z\/OS"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"912"}]

Document Information

Modified date:
04 March 2021