Document strange jsonb sort order for empty top level arrays
authorAndrew Dunstan <andrew@dunslane.net>
Fri, 3 Jan 2025 14:23:46 +0000 (09:23 -0500)
committerAndrew Dunstan <andrew@dunslane.net>
Fri, 3 Jan 2025 15:36:30 +0000 (10:36 -0500)
commit30f017626308a06cf0c0c82a706a1ba1b07df34a
treebab5af8cca336d73ead7f8490fb6f58205646273
parente28033fe1af8037e0fec8bb3a32fabbe18ac06b1
Document strange jsonb sort order for empty top level arrays

Slightly faulty logic in the original jsonb code (commit d9134d0a355)
results in an empty top level array sorting less than a json null. We
can't change the sort order now since it would affect btree indexes over
jsonb, so document the anomaly.

Backpatch to all live branches (13 .. 17)

In master, also add a code comment noting the anomaly.

Reported-by: Yan Chengpen
Reviewed-by: Jian He
Discussion: https://postgr.es/m/OSBPR01MB45199DD8DA2D1CECD50518188E272@OSBPR01MB4519.jpnprd01.prod.outlook.com
doc/src/sgml/json.sgml
src/backend/utils/adt/jsonb_util.c