You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucene.apache.org by "Nicholas Knize (JIRA)" <ji...@apache.org> on 2015/09/03 15:52:46 UTC

[jira] [Updated] (LUCENE-6777) Switch GeoPointTermsEnum range list to use a reusable BytesRef

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

Nicholas Knize updated LUCENE-6777:
-----------------------------------
    Attachment: LUCENE-6777.patch

Patch that converts GeoPointTermsEnum to use a reusable BytesRef for comparing Ranges against indexed terms.

Will add performance numbers shortly.

> Switch GeoPointTermsEnum range list to use a reusable BytesRef 
> ---------------------------------------------------------------
>
>                 Key: LUCENE-6777
>                 URL: https://issues.apache.org/jira/browse/LUCENE-6777
>             Project: Lucene - Core
>          Issue Type: Improvement
>            Reporter: Nicholas Knize
>         Attachments: LUCENE-6777.patch
>
>
> GeoPointTermsEnum currently constructs a BytesRef for every computed range, then sorts on this BytesRef.  This adds an unnecessary memory overhead since the TermsEnum only requires BytesRef on calls to nextSeekTerm and accept and the ranges only need to be sorted by their long representation. This issue adds the following two improvements:
> 1. Lazily compute the BytesRef on demand only when its needed
> 2. Add a single, transient BytesRef to GeoPointTermsEnum
> This will further cut back on heap usage when constructing ranges across every segment.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

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