db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Kristian Waagan (JIRA)" <j...@apache.org>
Subject [jira] Commented: (DERBY-2711) If large blob is updated after InputStream is fetched (using getBinaryStream), the stream continues to point ot old data
Date Thu, 07 Jun 2007 14:40:26 GMT

    [ https://issues.apache.org/jira/browse/DERBY-2711?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12502366

Kristian Waagan commented on DERBY-2711:

I'm running tests for the change now.

I have a few requests/questions for the patch:
 a) It can no longer be cleanly applied because of a (trivial) conflict in _Suite (easy to
 b) One line in the new file contains tabs.
 c) Is it necessary to copy all the JavaDoc from InputStream.read? I think a shorter JavaDoc
and a reference to InputStream would suffice, but maybe people disagree with this?
 d) Another suggestion, not a requirement, it to rename updateIfRequired to something like
updateStream and only call it when necessary. This would require 'if (!materialized &&
blob.isMaterialized())' all places where updateIfRequired is called currently. This is more
a personal preference of mine, so you are free to ignore it :)

I just want to point out that once a Blob has been "materialized", that is transferred from
the store to what I tend to call a temporary blob, it cannot go back to be a Blob working
on top of a store stream. For this to happen you must reinsert the Blob into the database
and fetch it again, thus getting a new Blob object to work on.

The patch looks good functionally, and I expect to commit it tomorrow if the tests run cleanly.


> If large blob is updated after InputStream is fetched (using getBinaryStream), the stream
continues to point ot old data
> ------------------------------------------------------------------------------------------------------------------------
>                 Key: DERBY-2711
>                 URL: https://issues.apache.org/jira/browse/DERBY-2711
>             Project: Derby
>          Issue Type: Bug
>          Components: JDBC
>    Affects Versions:
>            Reporter: Anurag Shekhar
>            Assignee: Anurag Shekhar
>             Fix For:
>         Attachments: derby-2711.diff
> While using a large blob (so that blob doesn't gets materialized while fetching from
database) getBinaryStream returns stream linked to dvd. After blob is is updated internally
the blob data is materialized in LOBStreamControl class but the stream continues to point
to dvd hence giving out old data.

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

View raw message