getBinary() returns incorrect data after getObject() call on BLOB column
------------------------------------------------------------------------
Key: DERBY-5489
URL: https://issues.apache.org/jira/browse/DERBY-5489
Project: Derby
Issue Type: Bug
Affects Versions: 10.8.2.2, 10.7.1.1
Reporter: Pawel Fronczak
When ResultSet.getObject(int) is called on a BLOB column, the correct EmbedBlob
object is returned. But if afterwards the ResultSet.getBytes(int) is called on
the same row, the returned array contains invalid data - it is offset by 3
bytes and its size is incorrect.
The problem only occurs when the stored BLOB is large enough to be internally
represented by stream and not by array of bytes (at least ~32KiB).
It seems that the getObject method shifts the stream position and therefore the
getBytes method starts to read the data after the third byte, thus incorrectly
calculating its length.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira