[
https://issues.apache.org/jira/browse/OAK-3587?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Alex Parvulescu reassigned OAK-3587:
------------------------------------
Assignee: Alex Parvulescu
> SegmentNodeStore should ensure that checkpoint is issued in case of frequent
> writes by taking an exclusive lock
> ---------------------------------------------------------------------------------------------------------------
>
> 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
>
>
> 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)