A fix is available
APAR status
Closed as program error.
Error description
Various service updates to the IBM DB2 Driver for JDBC and SQLJ release 4.8 may be provided.
Local fix
Problem summary
**************************************************************** * USERS AFFECTED: All DB2 Version 9 Users of the IBM Data * * Server Driver for JDBC and SQLJ. * **************************************************************** * PROBLEM DESCRIPTION: IBM DB2 Driver for JDBC and SQLJ * * version 4.8.108 is provided by this * * APAR ( JCCV48108 ) * * * * This APAR is applicable to * * IBM DB2 Driver for JDBC and SQLJ * * for DB2 z/OS V9 ( JCCZOSDB2V9 ) * * * * This APAR delivers a service bundling * * to release 4.8 of the IBM DB2 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: ____________________________________________________________ Type-4 Connectivity: The driver may throw an SQLException with SQLCODE30073 (-30073) if the application has a scrollable cursor, property useRowsetCursor is set to false, property progressiveStreaming is not set (default is true) or is set to true, and the output LOB/XML length is greater than the streamBufferSize. This problem has been fixed. (134359) ____________________________________________________________ Type-4 Connectivity: For the following trusted switch user APIs, if the application passes NULL for user, the driver will throw an SQLException with the message "Null userid is not supported." DB2PooledConnection public DB2Connection getDB2Connection (byte cookie, String user, String password, String userRegistry, byte userSecToken, String originalUser, java.util.Properties properties); DB2Connection public abstract void reuseDB2Connection (byte cookie, String user, String password, String userRegistry, byte userSecToken, String originalUser, java.util.Properties properties); (136006) ____________________________________________________________ Type-4 Connectivity: The driver throws an exception with SQLCODE4499 (-4499) with message "A communication error occurred during operations on the connection's underlying socket, socket input stream, or socket output stream. Error location: Request.writeScalarStream()." and does not try to reroute to an alternate server even if the alternate server information is setup. This problem has been corrected. (137300) ____________________________________________________________ Type-4 Connectivity: Under sysplexWLB environment, if failover happens during a reset, an application can get an SQLException with SQLCODE4499 (-4499) and an SQLException with SQLCODE30108 (-30108) at the same time. This has been fixed. (135453) ____________________________________________________________ Type-4 Connectivity: Running under heavy workload SysplexWLB environment and periodically stopping and restarting the sysplex members, the driver may mess up the internal workload information and would not distribute the workload properly. This problem has been fixed. (135451) ____________________________________________________________ Type-4 Connectivity: Under sysplexWLB environment, the driver may not distribute the workload properly if an application calls Statement.cancel() method to cancel a long running transaction. This problem has been fixed. (137109) ____________________________________________________________ Type-4 Connectivity: When driver properties "affinityFailbackInterval" and "sslConnection" are both enabled, driver fails to failback to the primary server because it was not creating a SSL socket to detect the availability of the failback server. This problem has been fixed. (137301) ____________________________________________________________ Type-4 Connectivity: When driver properties "affinityFailbackInterval", "enableSeamlessFailover" and "enableClientAffinitiesList" are enabled, driver throws an exception with SQLCODE4470 (-4470) with message "Invalid operation: statement is closed." following a successful failover if driver has processed an agent permanent reply message in the failover process. This problem has been corrected. (137660) ____________________________________________________________ Type-4 Connectivity: When driver properties "affinityFailbackInterval", "enableSeamlessFailover" and "enableClientAffinitiesList" are enabled, driver fails to failback to the primary server if the primary server is stopped and restarted. This problem has been corrected. (137964) ____________________________________________________________ Type-4 XA Connectivity: Under sysplexWLB environment, an exception with SQLCODE4499 (-4499) with Reason code 0x13 and SQLSTATE=58009 may be thrown if the underlying XAConnection is a trusted connection opened by XADataSource.getDB2TrustedXAConnection(). This problem has been corrected. (135452) ____________________________________________________________ Type-4 XA Connectivity: A Null socketOutputStream error with SQLCODE4499 (-4499) may be thrown against a DB2 zOS server under non-sysplexWLB environment. This has been fixed. (136885) ____________________________________________________________ Type-4 XA Connectivity: An XAException with XAER_PROTO or XAER_DUPID error may occur at the time of xa-end for a global transaction when running an application against a XADataSource with enableSysplexWLB property set to false and the enableClientAffinitiesList property is enabled. (135964) ____________________________________________________________ Type-4 XA Connectivity: The DB2 connection correlator returned from DB2Connection.getDB2Correlator() does not return the most recent correlator. The correlator may change over time under certain circumstances such as in an XAConnection. This has been addressed and the most recent correlator will be returned. (135922) ____________________________________________________________ All connectivities: The driver returns a com.ibm.db2.jcc.DBTimestamp object which is a subclass of java.sql.Timestamp instead of a java.sql.Timestamp object when standard JDBC APIs are called for returning a timestamp object. This can cause a ClassNotFoundException if the object is deserialized over network where the driver is not in the classpath. We now will only return java.sql.Timestamp object in the standard JDBC APIs. (136053) ____________________________________________________________ All Connectivities: The driver throws NullPointerException during sqlj customization with online check off. The problem has been fixed. (134593) ____________________________________________________________ All Connectivities: A java.lang.ExceptionInInitializerError may occur due to a java.lang.NullPointerException if db2jcc.jar is loaded by the bootstrap classloader. This error will occur at the time the driver is loaded. This problem has been corrected. (137191) ____________________________________________________________ All Connectivities: When autogenerated keys are requested on a View defined with identity columns, an empty result set was returned. The driver will now fall back to use "select IDENTITY_VAL_LOCAL() from SYSIBM.SYSDUMMY1" for the autogenerated key in the case when identity columns were not identified. This problem is now fixed. (136007) ____________________________________________________________ All Connectivities: The driver may throw NullPointerException when calling ResultSet.updateRow() or ResultSet.insertRow(). This problem has been fixed. (138224)
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
PM03787
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
2009-12-16
Closed date
2010-03-01
Last modified date
2010-04-02
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
UK54837
Modules/Macros
DSNAJJC1 DSNAJJC2 DSNAJ3CC DSNAJ3CE DSNAJ3CF DSNAJ3CM DSNAJ3C0 DSNAJ3C1 DSNAJ3C2 DSNAJ3C3 DSNAJ3C4 DSNAJ3C5 DSNAJ3C6 DSNAJ3C7 DSNAJ3C9 DSNAJ6CC DSNAJ6CE DSNAJ6CF DSNAJ6CM DSNAJ6C0 DSNAJ6C1 DSNAJ6C2 DSNAJ6C3 DSNAJ6C4 DSNAJ6C5 DSNAJ6C6 DSNAJ6C7 DSNAJ6C9 NONE
Fix information
Fixed component name
DB2 ODBC/JDBC/S
Fixed component ID
5740XYR02
Applicable component levels
R912 PSN UK54837
UP10/03/04 P F003
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