Remove "invalid concatenation of jsonb objects" error case.

Tom Lane <tgl@sss.pgh.pa.us>

Commit: 1d5f3f976b26271b51a619f02436ec5c263db9f3
Author: Tom Lane <tgl@sss.pgh.pa.us>
Date: 2020-12-21T18:11:30Z
Releases: 9.6.21
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

Files

Documentation touched

Discussion