pgsql: Fix daterange canonicalization for +/- infinity.

Поиск
Список
Период
Сортировка
От Jeff Davis
Тема pgsql: Fix daterange canonicalization for +/- infinity.
Дата
Msg-id E1hoGQZ-00025g-4i@gemulon.postgresql.org
обсуждение исходный текст
Список pgsql-committers
Fix daterange canonicalization for +/- infinity.

The values 'infinity' and '-infinity' are a part of the DATE type
itself, so a bound of the date 'infinity' is not the same as an
unbounded/infinite range. However, it is still wrong to try to
canonicalize such values, because adding or subtracting one has no
effect. Fix by treating 'infinity' and '-infinity' the same as
unbounded ranges for the purposes of canonicalization (but not other
purposes).

Backpatch to all versions because it is inconsistent with the
documented behavior. Note that this could be an incompatibility for
applications relying on the behavior contrary to the documentation.

Author: Laurenz Albe
Reviewed-by: Thomas Munro
Discussion: https://postgr.es/m/77f24ea19ab802bc9bc60ddbb8977ee2d646aec1.camel%40cybertec.at
Backpatch-through: 9.4

Branch
------
REL_10_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/955089d4d74d0dbaaa6c1e3a4652e96b6d1c2f54

Modified Files
--------------
src/backend/utils/adt/rangetypes.c       |  4 ++--
src/test/regress/expected/rangetypes.out | 24 ++++++++++++++++++++++++
src/test/regress/sql/rangetypes.sql      |  4 ++++
3 files changed, 30 insertions(+), 2 deletions(-)


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

Предыдущее
От: Jeff Davis
Дата:
Сообщение: pgsql: Fix error in commit e6feef57.
Следующее
От: Jeff Davis
Дата:
Сообщение: pgsql: Fix error in commit e6feef57.