[ https://issues.apache.org/jira/browse/GEODE-3926?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16436241#comment-16436241 ]
ASF subversion and git services commented on GEODE-3926: -------------------------------------------------------- Commit b71b79fe813b408fc50a172644007e2d5f54a1e2 in geode's branch refs/heads/develop from nabarun [ https://gitbox.apache.org/repos/asf?p=geode.git;h=b71b79f ] GEODE-3926: handle new lucene indexing exception * Ignored test till LUCENE_REINDEX flag is removed * Indexing in progress exception will not be thrown if LUCENE_REINDEX flag is not enabled > Lucene Query should throw an exception while lucene index is being built on > existing region > ------------------------------------------------------------------------------------------- > > Key: GEODE-3926 > URL: https://issues.apache.org/jira/browse/GEODE-3926 > Project: Geode > Issue Type: Sub-task > Components: lucene > Reporter: Jason Huynh > Assignee: Udo Kohlmeyer > Priority: Major > Labels: pull-request-available > Time Spent: 1h 40m > Remaining Estimate: 0h > > When GEODE-3928 is complete, we will have a process to index existing data in > a region when a lucene index is added. That process may take some time. While > indexing is going on queries should not block for a long period of time or > return incorrect results. Instead the query should throw an exception > indicating that the index does not exist/is not built yet. > Acceptance: > Queries executed while indexing is going on throw an exception, rather than > blocking or returning incorrect results. > Implementation Details: > GEODE-3928 is about modifying computeRepository to actually do the indexing. > Queries also call compute repository, so they will block until > computeRepository is done. > To avoid blocking, we can make computeRepo to return an IndexRepository in > an "building" state. That index repo could contain an asynchronous task that > is actually indexing the data. Until the asynchronous task is complete, the > IndexRepostory could throw exceptions from query operations. This has the > advantage of making sure that whenever computeRepository is called, we always > at least start or make sure there is a task running to index the data. -- This message was sent by Atlassian JIRA (v7.6.3#76005)