IC69458: JCC DRIVER HANGS IN INFINITE LOOP
Fixes are available
Closed as program error.
An application using the JDBC/JCC driver will hang when calling the streaming methods: PreparedStatement.getCharacterStream(int, Reader) OR PreparedStatement.setCharacterStream(int, Reader, -1) A javacore from the hanging application may be similar to the function stack below: java.lang.Thread.State: RUNNABLE at java.nio.charset.CharsetEncoder.encode(CharsetEncoder.java:544) at com.ibm.db2.jcc.t4.ib.a(ib.java:257) at com.ibm.db2.jcc.t4.lb.a(lb.java:1635) at com.ibm.db2.jcc.t4.lb.a(lb.java:181) at com.ibm.db2.jcc.t4.vb.a(vb.java:175) This issue is not affected by CPU load and occurs when streaming is used for large CLOBs. For example if MY_DATA was a string longer than 16,390 characters this issue can be easily reproduced. private static String MY_DATA; PreparedStatement.setCharacterStream(2, new StringReader(MY_DATA));
Use PreparedStatement.setCharacterStream(int, Read, length) or PreparedStatement.getCharacterStream(int, Read, length) which specifies the length of the data.
See ERROR DESCRIPTION.
First fixed with JDBC driver included with v9.5 Fixpack 7. This is a client side fix.
See LOCAL FIX.
Reported component name
DB2 FOR LUW
Reported component ID
Last modified date
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
Fixed component name
DB2 FOR LUW
Fixed component ID
Applicable component levels