Re: Incorrect behaviour when using a GiST index on points

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: Incorrect behaviour when using a GiST index on points
Дата
Msg-id 25625.1360366373@sss.pgh.pa.us
обсуждение исходный текст
Ответ на Re: Incorrect behaviour when using a GiST index on points  (Alexander Korotkov <aekorotkov@gmail.com>)
Список pgsql-hackers
Alexander Korotkov <aekorotkov@gmail.com> writes:
> On Sat, Nov 3, 2012 at 4:23 AM, Noah Misch <noah@leadboat.com> wrote:
>> ...  At internal pages, gist_point_consistent() should implement
>> "point <@ box" with an algorithm near-equivalent to box_overlap().  (As an
>> optional deviation, it may use exact comparisons despite box_overlap() using
>> fuzzy comparisons.)  Looking at the math again, your latest code does achieve
>> that, too.  I was thrown off by your use of a different, albeit mathematically
>> equivalent, algorithm from the one used in box_overlap().  Please don't do
>> that; either use box_overlap()'s algorithm here, or change box_overlap() to
>> use the shorter algorithm you have introduced.  Formulating the same
>> calculation differently in related code is a recipe for confusion.  (Then
>> again, perhaps the equivalence of the algorithms is obvious to everyone
>> entitled to travel within 1 km of the geometric type implementation.)

> I've added comment for clarifying this situation.

Applied and back-patched with some cosmetic changes (mostly the
comments) and a better version of the regression test.

As a separate commit, I also simplified box_overlap() to match this
logic, since I agree with Noah that it's not good for them to look so
different.  Besides, it should be at least a bit faster this way.
        regards, tom lane



В списке pgsql-hackers по дате отправления:

Предыдущее
От: Tom Lane
Дата:
Сообщение: Re: Time for an autoconf update
Следующее
От: Amit kapila
Дата:
Сообщение: Re: Identity projection