[
https://issues.apache.org/jira/browse/DERBY-6228?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13800866#comment-13800866
]
Dyre Tjeldvoll commented on DERBY-6228:
---------------------------------------
Changing the {{VARCHAR}} column in SURTest to {{CLOB}} gives 12 errors, of
which 3 are distinct:
* the protocol error reported here
* {{java.sql.SQLException: The locator that was supplied for this CLOB/BLOB is
invalid}}
* {{java.lang.NullPointerException at
org.apache.derby.client.am.SignedBinary.getInt(SignedBinary.java:61)}}
> 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.8.3.0, 10.10.1.1
> Reporter: Lukas Eder
> Labels: derby_triage10_11
> Attachments: Derby6228.java
>
>
> 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 was sent by Atlassian JIRA
(v6.1#6144)