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 2017/10/04 17:43:07 UTC
[jira] [Updated] (OAK-6779) IndexTracker should check diff on
:status node to detect index updates
[ https://issues.apache.org/jira/browse/OAK-6779?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Chetan Mehrotra updated OAK-6779:
---------------------------------
Attachment: OAK-6779-v1.patch
[patch|^OAK-6779-v1.patch] for the same.
IndexTracker now explicitly checks if
* Any change has happened in ":status" node
* OR Any change has happened in ":index-definition" node - This is required to support "refresh" case where no index update happen (so status remains unchanged) but change in index definition needs to be picked up
[~catholicon] Please review
> IndexTracker should check diff on :status node to detect index updates
> ----------------------------------------------------------------------
>
> Key: OAK-6779
> URL: https://issues.apache.org/jira/browse/OAK-6779
> Project: Jackrabbit Oak
> Issue Type: Technical task
> Components: lucene
> Reporter: Chetan Mehrotra
> Assignee: Chetan Mehrotra
> Fix For: 1.8
>
> Attachments: OAK-6779-v1.patch
>
>
> Currently IndexTracker while checking for index state updates does a diff till indexPath. For e.g. if index is /oak:index/fooIndex then it would create a SubtreeEditor for path /oak:index/fooIndex and refreshes the index if any change is found under that path.
> With synchronous lucene property indexes now other changes would occur under /oak:index/fooIndex/:property-index which causes the tracker to refresh the index even if no change has occurred in main index. This is mitigated to some extent with OAK-6713 and its use in IndexTracker but not complete.
> For proper fix the diff should check for changes in :status node
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)