[
https://issues.apache.org/jira/browse/LUCENE-6930?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15136136#comment-15136136
]
ASF subversion and git services commented on LUCENE-6930:
---------------------------------------------------------
Commit 74a08c08006941b74eda585b86b57fbe0ff341b2 in lucene-solr's branch
refs/heads/branch_5x from nknize
[ https://git-wip-us.apache.org/repos/asf?p=lucene-solr.git;h=74a08c0 ]
LUCENE-6930: Decouples GeoPointField from NumericType by using a custom
GeoPointTokenStream and TermEnum designed for GeoPoint prefix terms
> Decouple GeoPointField from NumericType
> ---------------------------------------
>
> Key: LUCENE-6930
> URL: https://issues.apache.org/jira/browse/LUCENE-6930
> Project: Lucene - Core
> Issue Type: Improvement
> Components: modules/spatial
> Reporter: Nicholas Knize
> Fix For: 5.5, trunk
>
> Attachments: LUCENE-6930.patch, LUCENE-6930.patch, LUCENE-6930.patch,
> LUCENE-6930.patch, 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
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]