jackrabbit-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jukka Zitting (JIRA)" <j...@apache.org>
Subject [jira] Commented: (JCR-851) Handling of binary properties (streams) in QValue interface
Date Wed, 18 Apr 2007 18:14:15 GMT

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

Jukka Zitting commented on JCR-851:
-----------------------------------

In most cases, especially when working with large binaries, the client will not try to read
the stream from transient space when storing the binary in the repository. Thus a reasonable
SPI implementation would stream (large) binaries to the backend server already during QValueFactory.create(InputStream)
and use internal of identifiers to keep track of the values.

Just like with the normal JCR ValueFactory interface, the most reasonable implementation is
to consume the entire InputStream when the create() method is called instead of lazily keeping
just the reference.

> 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.


Mime
View raw message