You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-issues@jackrabbit.apache.org by "Chetan Mehrotra (JIRA)" <ji...@apache.org> on 2015/05/18 07:17:59 UTC

[jira] [Updated] (OAK-2627) Optimize equals in AbstractBlob

     [ https://issues.apache.org/jira/browse/OAK-2627?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Chetan Mehrotra updated OAK-2627:
---------------------------------
    Attachment: OAK-2627-chetanm.patch

[updated patch|^OAK-2627-chetanm.patch] with following changes

* Makes use of contentIdentity to compare first. If they are same then blobs are definitely same otherwise falls back to further checks. For {{SegmentBlob}} the contentIdentity is recordId which might be different (this might be a problem!)
* Makes use of reference to compare first. If they are same then blobs are definitely same otherwise falls back to further checks.

[~jsedding] The updated patch still falls back if the comparison fails as final source of truth is blob content and it might happen that reference etc might differ

[~tmueller] [~amitjain] Can you review the patch.




> Optimize equals in AbstractBlob
> -------------------------------
>
>                 Key: OAK-2627
>                 URL: https://issues.apache.org/jira/browse/OAK-2627
>             Project: Jackrabbit Oak
>          Issue Type: Improvement
>          Components: core
>    Affects Versions: 1.1.7
>            Reporter: Julian Sedding
>            Priority: Minor
>         Attachments: OAK-2627-chetanm.patch, OAK-2627.patch
>
>
> During some work on the upgrade tool, I discovered tat AbstractBlob's {{equals}} method does not leverage reference comparison.
> While I have not investigated whether this really helps, I suspect it does. This issue is for the consideration of people with a deeper understanding of the system's dynamics.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)