Re: Wrong results from in_range() tests with infinite offset
| От | Tom Lane |
|---|---|
| Тема | Re: Wrong results from in_range() tests with infinite offset |
| Дата | |
| Msg-id | 3941233.1595081173@sss.pgh.pa.us обсуждение |
| Ответ на | Re: Wrong results from in_range() tests with infinite offset (Dean Rasheed <dean.a.rasheed@gmail.com>) |
| Ответы |
Re: Wrong results from in_range() tests with infinite offset
|
| Список | pgsql-hackers |
Dean Rasheed <dean.a.rasheed@gmail.com> writes:
> if (isinf(base) && isinf(offset))
> {
> if ((base > 0 && sub) || (base < 0 && !sub))
> PG_RETURN_BOOL(true);
> }
Yeah, I'd experimented with more-or-less that logic before arriving at
my v2 patch. I didn't like the outcome that "inf both infinitely precedes
and infinitely follows itself". Still, it is nicely simple.
To make sense of this behavior, you have to argue that +/-inf are not
in any way concrete values, but represent some sort of infinite ranges;
then there could be some members of the class "inf" that infinitely
precede other members. I thought that was bending the mathematical
concept a bit too far. However, this isn't an area of math that I've
studied in any detail, so maybe it's a standard interpretation.
Still, I think the results my v2 patch gets make more sense than these.
regards, tom lane
В списке pgsql-hackers по дате отправления: