Обсуждение: pgsql: Render infinite date/timestamps as 'infinity' for json/jsonb

Поиск
Список
Период
Сортировка

pgsql: Render infinite date/timestamps as 'infinity' for json/jsonb

От
Andrew Dunstan
Дата:
Render infinite date/timestamps as 'infinity' for json/jsonb

Commit ab14a73a6c raised an error in these cases and later the
behaviour was copied to jsonb. This is what the XML code, which we
then adopted, does, as the XSD types don't accept infinite values.
However, json dates and timestamps are just strings as far as json is
concerned, so there is no reason not to render these values as
'infinity'.

The json portion of this is backpatched to 9.4 where the behaviour was
introduced. The jsonb portion only affects the development branch.

Per gripe on pgsql-general.

Branch
------
master

Details
-------
http://git.postgresql.org/pg/commitdiff/bda76c1c8cfb1d11751ba6be88f0242850481733

Modified Files
--------------
src/backend/utils/adt/json.c          |   43 +++++++++++------------
src/backend/utils/adt/jsonb.c         |   61 ++++++++++++++++++---------------
src/test/regress/expected/json.out    |   24 +++++++++++++
src/test/regress/expected/json_1.out  |   24 +++++++++++++
src/test/regress/expected/jsonb.out   |   24 +++++++++++++
src/test/regress/expected/jsonb_1.out |   24 +++++++++++++
src/test/regress/sql/json.sql         |    6 ++++
src/test/regress/sql/jsonb.sql        |    6 ++++
8 files changed, 164 insertions(+), 48 deletions(-)