lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Nicholas Knize (JIRA)" <>
Subject [jira] [Commented] (LUCENE-6930) Decouple GeoPointField from NumericType
Date Tue, 19 Jan 2016 02:09:39 GMT


Nicholas Knize commented on LUCENE-6930:

Nice!!! Thanks for that protip! That certainly would have come in handy in this situation.

> Decouple GeoPointField from NumericType
> ---------------------------------------
>                 Key: LUCENE-6930
>                 URL:
>             Project: Lucene - Core
>          Issue Type: Improvement
>            Reporter: Nicholas Knize
>         Attachments: LUCENE-6930.patch, LUCENE-6930.patch
> {{GeoPointField}} currently relies on {{NumericTokenStream}} to create prefix terms for
a GeoPoint using the precision step defined in {{GeoPointField}}. At search time {{GeoPointTermsEnum}}
recurses to a max precision that is computed by the Query parameters. This max precision is
never the full precision, so creating and indexing the full precision terms is useless and
wasteful (it was always a side effect of just using indexing logic from the Numeric type).

> Furthermore, since the numerical logic always stored high precision terms first, the
recursion in {{GeoPointTermsEnum}} required transient memory for storing ranges. By moving
the trie logic to its own {{GeoPointTokenStream}} and reversing the term order (such that
lower resolution terms are first), the GeoPointTermsEnum can naturally traverse, enabling
on-demand creation of PrefixTerms. This will be done in a separate issue.

This message was sent by Atlassian JIRA

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message