You are viewing a plain text version of this content. The canonical link for it is here.
Posted to derby-dev@db.apache.org by "Kristian Waagan (JIRA)" <ji...@apache.org> on 2009/02/20 09:39:02 UTC

[jira] Assigned: (DERBY-4061) InputStream returned from Blob.getBinaryStream(long, long) terminates the stream by returning 0, should return -1

     [ https://issues.apache.org/jira/browse/DERBY-4061?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Kristian Waagan reassigned DERBY-4061:
--------------------------------------

    Assignee: Kristian Waagan

> InputStream returned from Blob.getBinaryStream(long, long) terminates the stream by returning 0, should return -1
> -----------------------------------------------------------------------------------------------------------------
>
>                 Key: DERBY-4061
>                 URL: https://issues.apache.org/jira/browse/DERBY-4061
>             Project: Derby
>          Issue Type: Bug
>          Components: JDBC
>    Affects Versions: 10.4.2.0
>            Reporter: Trejkaz
>            Assignee: Kristian Waagan
>
> Take the following code to copy a sub-stream from a BLOB:
> Blob blob = rs.getBlob(1);
> InputStream stream = blob.getBinaryStream(1000, 2000);
> try {
>   IOUtils.copy(stream, out);
> } finally {
>   stream.close();
> }
> This will loop forever in IOUtils.copy, as the InputStream is returning 0 at end of stream instead of -1.  It probably should return -1 to comply with the Javadoc for InputStream.
> Notes:
> I have not yet checked Blob.getBinaryStream(), or any of the Clob methods, or the client driver.  So some of these may have a similar issue.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.