[
https://issues.apache.org/jira/browse/OAK-1292?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Alex Parvulescu updated OAK-1292:
---------------------------------
Attachment: callback.patch
initial proposal. this turned out to be more complicated than expected.
A large part of the patch is enforcing the specific _IndexEditor_ type
throughout the indexing code.
Next, I introduced a callback interface that allows a subscriber to receive
notification when the actual indexing work has started (the index impls also
have specific rules to include/exclude content so simply having generic changes
in the diff was not enough).
Finally, I had to beak the async indexer into 3 parts, each on its own commit:
first is the status update, then indexing and then status update again.
feedback needed
> Avoid async indexer commits when there are no changes to index
> --------------------------------------------------------------
>
> Key: OAK-1292
> URL: https://issues.apache.org/jira/browse/OAK-1292
> Project: Jackrabbit Oak
> Issue Type: Improvement
> Components: core
> Reporter: Jukka Zitting
> Assignee: Alex Parvulescu
> Fix For: 0.15
>
> Attachments: callback.patch
>
>
> Currently, since OAK-980 (and OAK-1246), the asynchronous indexer makes two
> commits per invocation regardless of whether there are any changes to the
> indexed content. This can be a bit confusing and in some cases even
> troublesome especially in a mostly read-only deployments where the frequent
> extra commits just add unnecessary noise.
> It would be better if the async indexer only made commits when there actually
> are content changes to be indexed.
--
This message was sent by Atlassian JIRA
(v6.1.5#6160)