You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucene.apache.org by "David Smiley (JIRA)" <ji...@apache.org> on 2017/05/17 18:17:04 UTC

[jira] [Updated] (LUCENE-7834) BlockTree's terms index should be loaded into memory lazily

     [ https://issues.apache.org/jira/browse/LUCENE-7834?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

David Smiley updated LUCENE-7834:
---------------------------------
    Attachment: LUCENE_7834_BlockTreeLazyFST.patch

Attached patch.  indexIn is kept open instead of closed eagerly since an FST may need to be loaded at any time, and it's problematic to re-open it.

Note I added this TODO about "indexIn" in FieldReader's constructor:
    {{//TODO DWS: I don't see how it can be null.  Lots of null checks on "index" in BlockTree could be removed.}}


> BlockTree's terms index should be loaded into memory lazily
> -----------------------------------------------------------
>
>                 Key: LUCENE-7834
>                 URL: https://issues.apache.org/jira/browse/LUCENE-7834
>             Project: Lucene - Core
>          Issue Type: Improvement
>          Components: core/codecs
>            Reporter: David Smiley
>            Assignee: David Smiley
>         Attachments: LUCENE_7834_BlockTreeLazyFST.patch
>
>
> I propose that BlockTree delay loading the FST prefix terms index into memory until {{terms(String)}} is first called.  This seems like how it should work since if someone wants to eager load then they can use {{IndexReaderWarmer}}.  By making the FST lazy load, we can be more NRT friendly (if some fields are rarely used), and also save memory (if some fields are rarely used).



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

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: dev-help@lucene.apache.org