Document behavior of the .** jsonpath accessor in the lax mode
authorAlexander Korotkov
Fri, 29 Jan 2021 12:27:55 +0000 (15:27 +0300)
committerAlexander Korotkov
Fri, 29 Jan 2021 12:28:14 +0000 (15:28 +0300)
commit9915fe22969a46f9d06d6c2c53dea7269ec4cc7e
tree82b48d7e25515760491b58d0ab4fcae29bceaccd
parent4a9ce085ab30ad01ffe03eb1743da82b1be280c1
Document behavior of the .** jsonpath accessor in the lax mode

When the .** jsonpath accessor handles the array, it selects both array and
each of its elements.  When using lax mode, subsequent accessors automatically
unwrap arrays.  So, the content of each array element may be selected twice.

Even though this behavior is counterintuitive, it's correct because everything
works as designed.  This commit documents it.

Backpatch to 12 where the jsonpath language was introduced.

Reported-by: Thomas Kellerer
Bug: #16828
Discussion: https://postgr.es/m/16828-2b0229babfad2d8c%40postgresql.org
Discussion: https://postgr.es/m/CAPpHfdtS-nNidT%3DEqZbAYOPcnNOWh_sd6skVdu2CAQUGdvpT8Q%40mail.gmail.com
Author: Alexandex Korotkov, revised by Tom Lane
Reviewed-by: Alvaro Herrera, Thomas Kellerer, Tom Lane
Backpatch-through: 12
doc/src/sgml/func.sgml