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

Chetan Mehrotra updated OAK-6781:
---------------------------------
    Attachment: OAK-6781-v1.patch

[patch|^OAK-6781-v1.patch] for the same.

It introduces a property {{retainNodeInReindex}}. {{IndexUpdate}} reindex logic 
would look for this property on any hidden node in two places

# Deciding when to reindex - {{IndexUpdate}} checks if index definition node 
has any hidden node. If no hidden node is present then it considers the index 
as fresh index and proceeds to reindex it. This logic would now ignore any 
hidden node having {{retainNodeInReindex}} set to true in this flow. So if it 
finds all hidden nodes having this property set it would consider the index for 
reindex
# Removing hidden nodes while reindexing - Once  {{IndexUpdate}} considers any 
node for reindex it would skip removing those hidden nodes which have  
{{retainNodeInReindex}} set to true

[~catholicon] Please review the patch

> Reindex handling with synchronous lucene property indexes
> ---------------------------------------------------------
>
>                 Key: OAK-6781
>                 URL: https://issues.apache.org/jira/browse/OAK-6781
>             Project: Jackrabbit Oak
>          Issue Type: Technical task
>          Components: lucene
>            Reporter: Chetan Mehrotra
>            Assignee: Chetan Mehrotra
>             Fix For: 1.8
>
>         Attachments: OAK-6781-v1.patch
>
>
> Reindex logic needs to be changes to account for presence of synchronous 
> lucene property indexes. Currently reindexer would remove all hidden nodes 
> which would also include the {{:property-index}} node and that can lead to 
> conflict with async indexer where this nodes gets modified during async 
> indexer run
> To support that we should provide a way where in reindexing some nodes are 
> not removed



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to