[
https://issues.apache.org/jira/browse/DERBY-3862?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12627891#action_12627891
]
Trejkaz commented on DERBY-3862:
--------------------------------
I have received a test database which reproduces this issue. I can't attach it
but I will attempt to figure out what it is about this particular database
which prevents it from working.
Using the character stream doesn't work around the issue in this case, I figure
it's worth mentioning that anyway.
> "You cannot invoke other java.sql.Clob/java.sql.Blob methods" on calling
> Result#getString for Clob column
> ---------------------------------------------------------------------------------------------------------
>
> Key: DERBY-3862
> URL: https://issues.apache.org/jira/browse/DERBY-3862
> Project: Derby
> Issue Type: Bug
> Components: Network Client
> Affects Versions: 10.4.1.3
> Reporter: Trejkaz
>
> I have seen this error a couple of times on the client driver v10.4.1.3
> (server is also v10.4.1.3 if it matters):
> java.sql.SQLException: You cannot invoke other
> java.sql.Clob/java.sql.Blob methods after calling the free() method or after
> the Blob/Clob's transaction has been committed or rolled back.
> at
> org.apache.derby.client.am.SQLExceptionFactory.getSQLException(SQLExceptionFactory.java:46)
> at
> org.apache.derby.client.am.SqlException.getSQLException(SqlException.java:362)
> at org.apache.derby.client.am.Clob.length(Clob.java:239)
> at org.apache.derby.client.am.Cursor.getString(Cursor.java:1035)
> at
> org.apache.derby.client.am.ResultSet.getString(ResultSet.java:1069)
> at
> org.apache.derby.client.am.ResultSet.getString(ResultSet.java:1661)
> at (our code)
> DERBY-3583 notes the error message for the same usage but that is for
> multiple calls -- this is happening on the *first* call to getString for that
> column.
> Autocommit is off -- all access to the database in our code is funneled
> through one place, we set it to false immediately after getting it from the
> pool and there are no other calls to it.
> I have looked at another place in our code where we are getting a Clob as a
> string and in that place we are using the character stream and reading that
> to a string, and not closing it, which in itself is suspicious but maybe
> there is a reason. There is no comment saying why we're not using getString,
> but it might be because of this issue. Will be investigating that lead some
> more shortly.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.