pgsql: Remove "invalid concatenation of jsonb objects" error case.

Поиск
Список
Период
Сортировка
От Tom Lane
Тема pgsql: Remove "invalid concatenation of jsonb objects" error case.
Дата
Msg-id E1krPfS-0005XU-DT@gemulon.postgresql.org
обсуждение исходный текст
Список pgsql-committers
Remove "invalid concatenation of jsonb objects" error case.

The jsonb || jsonb operator arbitrarily rejected certain combinations
of scalar and non-scalar inputs, while being willing to concatenate
other combinations.  This was of course quite undocumented.  Rather
than trying to document it, let's just remove the restriction,
creating a uniform rule that unless we are handling an object-to-object
concatenation, non-array inputs are converted to one-element arrays,
resulting in an array-to-array concatenation.  (This does not change
the behavior for any case that didn't throw an error before.)

Per complaint from Joel Jacobson.  Back-patch to all supported branches.

Discussion: https://postgr.es/m/163099.1608312033@sss.pgh.pa.us

Branch
------
REL9_5_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/edcdbc44eed2eae5c7b40a051998e32ecf4f8f12

Modified Files
--------------
doc/src/sgml/func.sgml              | 11 +++--
src/backend/utils/adt/jsonfuncs.c   | 85 +++++++++++++++++--------------------
src/test/regress/expected/jsonb.out | 36 +++++++++++++++-
src/test/regress/sql/jsonb.sql      |  5 +++
4 files changed, 86 insertions(+), 51 deletions(-)


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

Предыдущее
От: Tomas Vondra
Дата:
Сообщение: pgsql: Check parallel safety in generate_useful_gather_paths
Следующее
От: Tomas Vondra
Дата:
Сообщение: pgsql: Disallow SRFs when considering sorts below Gather Merge