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/05/02 06:49:04 UTC

[jira] [Commented] (OAK-5893) Async index abort should work even during traversals without index updates

    [ https://issues.apache.org/jira/browse/OAK-5893?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15992422#comment-15992422 ] 

Chetan Mehrotra commented on OAK-5893:
--------------------------------------

bq. Potentially read performance is slower due due to more frequent checking

The actual checking is done only after lease timeout boundaries i.e. now + leaseTimeOut > lease. The change here only ensures that the check for this condition is now done more frequently i.e. upon traversal of every 10 nodes instead of earlier case where this was done only after every 100 indexed node

bq. Afaiu, traversal is being counted in childNodeAdded and childNodeChanged - that potentially leaves a (minor) edge case out when there are lots of updates in a large set of siblings. I wonder if we should increment counter in propertyAdded/etc methods too.

Changed the logic now to do callback on "enter" node i.e. for every changed node

bq. I'm not feeling so good about instanceof NodeTraversalCallback

Ack. Changed the construction flow to pass it from outside 

Applied the modified patch with 1793435

> Async index abort should work even during traversals without index updates
> --------------------------------------------------------------------------
>
>                 Key: OAK-5893
>                 URL: https://issues.apache.org/jira/browse/OAK-5893
>             Project: Jackrabbit Oak
>          Issue Type: Improvement
>          Components: indexing
>            Reporter: Vikas Saurabh
>            Assignee: Chetan Mehrotra
>            Priority: Minor
>             Fix For: 1.7.0, 1.8
>
>         Attachments: OAK-5893-v1.patch
>
>
> With OAK-4262, we introduces a way to abort async index update. Currently, the check to abort is done when an index indeed gets updated. It would be useful to have abort check being done during traversal too (useful when reindexing is happening and traversal is on a tree which is not contributing to any index udpate)



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)