lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Robert Muir (JIRA)" <>
Subject [jira] [Created] (LUCENE-7160) LatLonPoint quantization should use same rounding mode as GeoPointField
Date Fri, 01 Apr 2016 06:13:25 GMT
Robert Muir created LUCENE-7160:

             Summary: LatLonPoint quantization should use same rounding mode as GeoPointField
                 Key: LUCENE-7160
             Project: Lucene - Core
          Issue Type: Bug
            Reporter: Robert Muir

Both of these fields quantize doubles in a lossy way, but GeoPoint rounds towards negative
infinity (because all values get shifted to positive space first), whereas LatLonPoint currently
rounds towards zero.

At the same time they share the same basic logic for e.g. tree traversal and same basic tests:
so it creates confusion that they round differently.

Especially since e.g. LatLonPoint does some operations in binary/integer space (some of these
optimizations such as its box query are currently buggy for edge cases, and tests are lenient
as TODO, another issue, may or may not impact GeoPoint, it at least tries harder).

I think LatLonPoint should round down to be more like GeoPoint here? By the way, doing this
also gives more consistency, it reduces the difference between the two implementations in
e.g. openstreetmaps searching (distance query benchmark now differs by only 4 hits...)

This quantization makes things complicated to reason about. I understand the advantages it
brings but I think along with that comes the responsibility of us handling edge cases better.
I don't think we do well at this today...

This message was sent by Atlassian JIRA

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

View raw message