[ https://issues.apache.org/jira/browse/JCR-3093?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13122694#comment-13122694
]
Timothee Maret edited comment on JCR-3093 at 10/7/11 11:30 AM:
---------------------------------------------------------------
The patch JCR-3093.patch implements the solution described by angela.
It spools a binary property only if explicitely requested (even with Session.getProperty)
was (Author: marett):
This patch implements the solution described by angela.
It spools a binary property only if explicitely requested (even with Session.getProperty)
> Inconsistency between Session.getProperty and Node.getProperty for binary values
> --------------------------------------------------------------------------------
>
> Key: JCR-3093
> URL: https://issues.apache.org/jira/browse/JCR-3093
> Project: Jackrabbit Content Repository
> Issue Type: Bug
> Components: jackrabbit-spi2dav
> Reporter: angela
> Attachments: JCR-3093.patch
>
>
> there an inconsistency in the binary handling between the batch-reading facility and
those cases where a property is directly
> accessed without having accessed the parent node before.
> this issue came up with timothee maret running into performance issues when retrieving
the length of a binary property:
> if the property-entry has been created in the run of a batch-read operation the corresponding
property-data object
> contains internal values that contain the length of the binary (such as transported with
the json response) and only
> read the data from the server if the value stream is explicitly requested.
> however, if the property is accessed directly (e.g. Session.getProperty or Node.getProperty
with a relative path)
> a GET request is made to the corresponding dav resource and the stream is read immediately.
> possible solution:
> if RepositoryService#getItemInfos(SessionInfo, ItemId) is called with a PropertyId the
implementation
> should not result in a GET request to the corresponding resource by calling super.getPropertyInfo(sessionInfo,
(PropertyId) itemId).
> instead it should be consistent with the batch-read and only make a PROPFIND request
for the property
> length. the returned PropertyInfo object would in that case be identical to the one generated
by the batch-read functionality.
--
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
|