lucene-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Bruno Roustant (Jira)" <j...@apache.org>
Subject [jira] [Resolved] (LUCENE-9045) Do not use TreeMap/TreeSet in BlockTree and PerFieldPostingsFormat
Date Mon, 02 Dec 2019 15:45:00 GMT

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

Bruno Roustant resolved LUCENE-9045.
------------------------------------
    Fix Version/s: 8.4
       Resolution: Fixed

> Do not use TreeMap/TreeSet in BlockTree and PerFieldPostingsFormat
> ------------------------------------------------------------------
>
>                 Key: LUCENE-9045
>                 URL: https://issues.apache.org/jira/browse/LUCENE-9045
>             Project: Lucene - Core
>          Issue Type: Improvement
>            Reporter: Bruno Roustant
>            Assignee: Bruno Roustant
>            Priority: Major
>             Fix For: 8.4
>
>          Time Spent: 20m
>  Remaining Estimate: 0h
>
> TreeMap/TreeSet is a heavy structure designed to dynamically sort keys. It's iterator
is much less performant than a list iterator. We should not use it when we don't need the
sorting capability once built.
> And this is the case in BlockTreeTermsReader and PerFieldPostingsFormat. We need a Map
and to sort keys at building time. But once built, we don't need to sort anymore, we can use
a simple list for iteration efficiency.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

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


Mime
View raw message