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

Michael McCandless updated LUCENE-6481:
---------------------------------------
    Attachment: LUCENE-6481.patch

New patch, starting from [~nknize]'s and then folding in the evilish random 
test I added for LUCENE-6477 ... maybe this can help debug why there are false 
negatives?

E.g. with this patch when I run:

{noformat}
ant test -Dtestcase=TestGeoPointQuery -Dtestmethod=testRandomTiny 
-Dtests.seed=F1E43F53709BFF82 -Dtests.verbose=true
{noformat}

It fails with this:
{noformat}
   [junit4]   2> NOTE: reproduce with: ant test  -Dtestcase=TestGeoPointQuery 
-Dtests.method=testRandomTiny -Dtests.seed=F1E43F53709BFF82 
-Dtests.locale=en_US -Dtests.timezone=Africa/Lome -Dtests.asserts=true 
-Dtests.file.encoding=UTF-8
   [junit4] FAILURE 2.91s | TestGeoPointQuery.testRandomTiny <<<
   [junit4]    > Throwable #1: java.lang.AssertionError: id=0 docID=0 
lat=-27.180279388889545 lon=-167.14191331870592 expected true but got: false 
deleted?=false
   [junit4]    >        at 
__randomizedtesting.SeedInfo.seed([F1E43F53709BFF82:B8A3E1152EBAC72E]:0)
   [junit4]    >        at 
org.apache.lucene.search.TestGeoPointQuery.verify(TestGeoPointQuery.java:301)
   [junit4]    >        at 
org.apache.lucene.search.TestGeoPointQuery.doTestRandom(TestGeoPointQuery.java:203)
   [junit4]    >        at 
org.apache.lucene.search.TestGeoPointQuery.testRandomTiny(TestGeoPointQuery.java:125)
   [junit4]    >        at java.lang.Thread.run(Thread.java:745)
{noformat}

The test case should be easy-ish to debug: it only indexes at most a few 10s of 
points...


> Improve GeoPointField type to only visit high precision boundary terms 
> -----------------------------------------------------------------------
>
>                 Key: LUCENE-6481
>                 URL: https://issues.apache.org/jira/browse/LUCENE-6481
>             Project: Lucene - Core
>          Issue Type: Improvement
>          Components: core/index
>            Reporter: Nicholas Knize
>         Attachments: LUCENE-6481.patch, LUCENE-6481_WIP.patch
>
>
> Current GeoPointField [LUCENE-6450 | 
> https://issues.apache.org/jira/browse/LUCENE-6450] computes a set of ranges 
> along the space-filling curve that represent a provided bounding box.  This 
> determines which terms to visit in the terms dictionary and which to skip. 
> This is suboptimal for large bounding boxes as we may end up visiting all 
> terms (which could be quite large). 
> This incremental improvement is to improve GeoPointField to only visit high 
> precision terms in boundary ranges and use the postings list for ranges that 
> are completely within the target bounding box.
> A separate improvement is to switch over to auto-prefix and build an 
> Automaton representing the bounding box.  That can be tracked 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]

Reply via email to