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

        

Reply via email to