[ 
https://issues.apache.org/jira/browse/JCR-851?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12489866
 ] 

Julian Reschke commented on JCR-851:
------------------------------------

I'm not sure I understand.

The code implementing QValue has no way to predict who is going to call 
getStream(), and in which order this will occur. If it doesn't copy the data 
upon creation, it will have to when it's read first. How exactly does that 
help, except by delaying the issue, and by potentially optimizing the case that 
getStream() never get's called?

> Handling of binary properties (streams) in QValue interface
> -----------------------------------------------------------
>
>                 Key: JCR-851
>                 URL: https://issues.apache.org/jira/browse/JCR-851
>             Project: Jackrabbit
>          Issue Type: Improvement
>          Components: SPI
>            Reporter: Julian Reschke
>
> The current SPI requires QValue to return new streams upon each call to 
> getStream(). As far as I can tell, this essentially requires a QValue 
> implementation to preserve the whole content of a stream, be it in memory or 
> on disk.
> In particular (and unless I'm missing something), when importing large 
> content into a repository, this causes the whole data stream to be written 
> twice. We really should try to avoid that.

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

Reply via email to