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

Alex Parvulescu edited comment on OAK-3587 at 11/5/15 10:03 AM:
----------------------------------------------------------------

thanks for the valuable feedback!

pushed the code in trunk with http://svn.apache.org/viewvc?rev=1712730&view=rev
* added proper _InterruptedException_ handling
* was not able to move this to {{SegmentNodeStoreBuilder}} unfortunately. it 
would have made backporting a nightmare.
* left the {{oak.checkpoints.lockWaitTime}} setting as a system property, set 
to 10s by default


was (Author: alex.parvulescu):
thanks for the valuable feedback!

pushed the code in trunk with http://svn.apache.org/viewvc?rev=1712730&view=rev
* added proper _InterruptedException_ handling
* was not able to move this to _SegmentNodeStoreBuilder_ unfortunately. it 
would have made backporting a nightmare.


> SegmentNodeStore stricter checkpoint creation policy
> ----------------------------------------------------
>
>                 Key: OAK-3587
>                 URL: https://issues.apache.org/jira/browse/OAK-3587
>             Project: Jackrabbit Oak
>          Issue Type: Improvement
>          Components: segmentmk
>            Reporter: Chetan Mehrotra
>            Assignee: Alex Parvulescu
>             Fix For: 1.3.10, 1.2.8, 1.0.24
>
>         Attachments: OAK-3587-v2.patch, OAK-3587.patch
>
>
> AsyncIndexUpdate proceeds with an indexing cycle only if the NodeStore issues 
> a checkpoint. A NodeStore implementation can issue a checkpoint but for it to 
> be valid the caller must fetch NodeState for that checkpoint. If a non null 
> NodeState is found it indicates that checkpoint is valid.
> With SegmentNodeStore its possible under high write conditions that 
> checkpoint issues is not valid as it only attempts an optimistic lock. This 
> can cause unbounded delays in acquiring a valid checkpoint and thus cause 
> delay in AsyncIndexUpdate cycle and that causes effect on queries which rely 
> on such async indexes.
> Instead of doing an optimistic lock it should attempt to acquire an exclusive 
> lock. See [1] for some more details on checkpoint behaviour
> [1] http://markmail.org/thread/c7zo3zju7e2hakg4



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

Reply via email to