Lukas Eder created DERBY-6228: --------------------------------- Summary: DisconnectException when executing an SELECT [LOB column] ORDER BY [...] statement with TYPE_SCROLL_[IN]SENSITIVE and CONCUR_UPDATABLE Key: DERBY-6228 URL: https://issues.apache.org/jira/browse/DERBY-6228 Project: Derby Issue Type: Bug Components: Network Client Affects Versions: 10.10.1.1, 10.8.3.0 Reporter: Lukas Eder
Here's a minimal program to reproduce the issue: Connection c = DriverManager.getConnection( "jdbc:derby://localhost:1527/test;create=true", "TEST", "TEST"); Statement s = c.createStatement(); s.executeUpdate( "CREATE TABLE t(" + "id INT NOT NULL, " + "c CLOB" + ")"); s.executeUpdate("INSERT INTO t VALUES (1, null)"); s.executeUpdate("INSERT INTO t VALUES (2, null)"); PreparedStatement stmt = c.prepareStatement( "SELECT * FROM t ORDER BY id", ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_UPDATABLE); ResultSet rs = stmt.executeQuery(); rs.next(); The above leads to this exception: java.sql.SQLNonTransientConnectionException: Netzwerkprotokollausnahme: DSS-Länge ist beim Beenden des Parsing-Vorgangs der ID-Kette größer als 0. Die Verbindung wurde beendet. at org.apache.derby.client.am.SQLExceptionFactory40.getSQLException(Unknown Source) at org.apache.derby.client.am.SqlException.getSQLException(Unknown Source) at org.apache.derby.client.am.ResultSet.next(Unknown Source) at org.jooq.test._.testcases.KeepResultSetTests.testKeepRSWithUpdateOnChangeLazy(KeepResultSetTests.java:330) at org.jooq.test.jOOQAbstractTest.testKeepRSWithUpdateOnChangeLazy(jOOQAbstractTest.java:2240) ... Caused by: org.apache.derby.client.am.DisconnectException: Netzwerkprotokollausnahme: DSS-Länge ist beim Beenden des Parsing-Vorgangs der ID-Kette größer als 0. Die Verbindung wurde beendet. at org.apache.derby.client.net.Reply.endOfSameIdChainData(Unknown Source) at org.apache.derby.client.net.NetResultSetReply.readPositioningFetch(Unknown Source) at org.apache.derby.client.net.ResultSetReply.readPositioningFetch(Unknown Source) at org.apache.derby.client.net.NetResultSet.readPositioningFetch_(Unknown Source) at org.apache.derby.client.am.ResultSet.getRowCount(Unknown Source) at org.apache.derby.client.am.ResultSet.resultSetContainsNoRows(Unknown Source) at org.apache.derby.client.am.ResultSet.getNextRowset(Unknown Source) at org.apache.derby.client.am.ResultSet.nextX(Unknown Source) ... 30 more To reproduce the above, all of the following things seem relevant: 1. There is at least one BLOB or CLOB column being selected 2. An ORDER BY clause is added 3. ResultSet.TYPE_SCROLL_SENSITIVE or ResultSet.TYPE_SCROLL_INSENSITIVE is set 4. ResultSet.CONCUR_UPDATABLE is set -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira