[
https://issues.apache.org/jira/browse/OAK-5253?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15741207#comment-15741207
]
Amit Jain commented on OAK-5253:
--------------------------------
We could change the {{SegmentBlob#equals()}} implementation to check for
equality of getBlobIds() if non null otherwise delegate it to the AbstractBlob
as being done currently.
This is similar to what is already done for {{BlobStoreBlob#equals()}}.
[~chetanm], [~jsedding], [~mduerig] wdyt?
> Optimize AbstractBlob#equal to not do content equals when possible
> ------------------------------------------------------------------
>
> Key: OAK-5253
> URL: https://issues.apache.org/jira/browse/OAK-5253
> Project: Jackrabbit Oak
> Issue Type: Improvement
> Components: blob
> Reporter: Amit Jain
> Assignee: Amit Jain
> Fix For: 1.6, 1.5.16, 1.4.11
>
> Attachments: OAK-5253.1.patch
>
>
> AbstractBlob#equals tries to match content when length is equal and content
> identities is not null and different. Matching content triggers an expensive
> download of binaries for S3DataStore.
> Since, right now the content identity is the content hash the check can be
> short -circuited when the content identities is not null and not equal to
> return false.
> This can be revisited if we change the identity to something different.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)