jackrabbit-oak-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Chetan Mehrotra (JIRA)" <j...@apache.org>
Subject [jira] [Created] (OAK-5924) Prevent long running query from delaying close of index
Date Tue, 14 Mar 2017 05:58:41 GMT
Chetan Mehrotra created OAK-5924:

             Summary: Prevent long running query from delaying close of index
                 Key: OAK-5924
                 URL: https://issues.apache.org/jira/browse/OAK-5924
             Project: Jackrabbit Oak
          Issue Type: Improvement
          Components: lucene
            Reporter: Chetan Mehrotra
            Assignee: Chetan Mehrotra
             Fix For: 1.8

Whenever the index gets updated {{IndexTracker}} detects the changes and open new {{IndexNode}}
and closes old index nodes. This flow would block untill all old IndexNode are closed.

IndexNode close itself relies on a writer lock. It can happen that a long running query i.e.
a query which is about to read a page of large is currently executing on the old IndexNode
instance. This query is trying load 100k  docs and is very slow (due to loading of excerpt)
then such a query would prevent the IndexNode from getting closed. This in turn would prevent
the index from seeing latest data and become stale.

To make query and indexing more resilient we should look if current IndexNode being used for
query is closing or not. If closing then query should open a fresh searcher

This message was sent by Atlassian JIRA

View raw message