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

Поиск
Список
Период
Сортировка
От Andrew Dunstan
Тема pgsql: Render infinite date/timestamps as 'infinity' for json/jsonb
Дата
Msg-id E1YR2LP-0003OK-UF@gemulon.postgresql.org
обсуждение исходный текст
Список pgsql-committers
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(-)


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

Предыдущее
От: Andres Freund
Дата:
Сообщение: pgsql: Reconsider when to wait for WAL flushes/syncrep during commit.
Следующее
От: Andrew Dunstan
Дата:
Сообщение: pgsql: Render infinite date/timestamps as 'infinity' for json/jsonb