pg.ddx.io  pgsql-committers@postgresql.org mailing list archive  
help / color / mirror / Atom feed
pgsql: Document strange jsonb sort order for empty top level arrays
6+ messages / 1 participants
[nested] [flat]

* pgsql: Document strange jsonb sort order for empty top level arrays
@ 2025-01-03 15:41 Andrew Dunstan <andrew@dunslane.net>
  0 siblings, 0 replies; 6+ messages in thread

From: Andrew Dunstan @ 2025-01-03 15:41 UTC (permalink / raw)
  To: pgsql-committers@lists.postgresql.org

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

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/30f017626308a06cf0c0c82a706a1ba1b07df34a

Modified Files
--------------
doc/src/sgml/json.sgml             | 3 ++-
src/backend/utils/adt/jsonb_util.c | 7 +++++++
2 files changed, 9 insertions(+), 1 deletion(-)



^ permalink  raw  reply  [nested|flat] 6+ messages in thread

* pgsql: Document strange jsonb sort order for empty top level arrays
@ 2025-01-03 15:41 Andrew Dunstan <andrew@dunslane.net>
  0 siblings, 0 replies; 6+ messages in thread

From: Andrew Dunstan @ 2025-01-03 15:41 UTC (permalink / raw)
  To: pgsql-committers@lists.postgresql.org

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

Branch
------
REL_17_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/591128f9c9c0e0b9c511c5eba6f889bd1daf3c4c

Modified Files
--------------
doc/src/sgml/json.sgml | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)



^ permalink  raw  reply  [nested|flat] 6+ messages in thread

* pgsql: Document strange jsonb sort order for empty top level arrays
@ 2025-01-03 15:41 Andrew Dunstan <andrew@dunslane.net>
  0 siblings, 0 replies; 6+ messages in thread

From: Andrew Dunstan @ 2025-01-03 15:41 UTC (permalink / raw)
  To: pgsql-committers@lists.postgresql.org

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

Branch
------
REL_16_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/653729ce0ec1c38b444740637896d6ec706ef13a

Modified Files
--------------
doc/src/sgml/json.sgml | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)



^ permalink  raw  reply  [nested|flat] 6+ messages in thread

* pgsql: Document strange jsonb sort order for empty top level arrays
@ 2025-01-03 15:41 Andrew Dunstan <andrew@dunslane.net>
  0 siblings, 0 replies; 6+ messages in thread

From: Andrew Dunstan @ 2025-01-03 15:41 UTC (permalink / raw)
  To: pgsql-committers@lists.postgresql.org

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

Branch
------
REL_15_STABLE

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

Modified Files
--------------
doc/src/sgml/json.sgml | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)



^ permalink  raw  reply  [nested|flat] 6+ messages in thread

* pgsql: Document strange jsonb sort order for empty top level arrays
@ 2025-01-03 15:41 Andrew Dunstan <andrew@dunslane.net>
  0 siblings, 0 replies; 6+ messages in thread

From: Andrew Dunstan @ 2025-01-03 15:41 UTC (permalink / raw)
  To: pgsql-committers@lists.postgresql.org

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

Branch
------
REL_14_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/9577dd523b3e3bb7fba66e708dfb9ca76e299b7e

Modified Files
--------------
doc/src/sgml/json.sgml | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)



^ permalink  raw  reply  [nested|flat] 6+ messages in thread

* pgsql: Document strange jsonb sort order for empty top level arrays
@ 2025-01-03 15:41 Andrew Dunstan <andrew@dunslane.net>
  0 siblings, 0 replies; 6+ messages in thread

From: Andrew Dunstan @ 2025-01-03 15:41 UTC (permalink / raw)
  To: pgsql-committers@lists.postgresql.org

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

Branch
------
REL_13_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/20a344bce8949f542eb25360fe69f14aa9a05b1b

Modified Files
--------------
doc/src/sgml/json.sgml | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)



^ permalink  raw  reply  [nested|flat] 6+ messages in thread


end of thread, other threads:[~2025-01-03 15:41 UTC | newest]

Thread overview: 6+ messages (download: mbox mbox.gz follow: Atom feed)
-- links below jump to the message on this page --
2025-01-03 15:41 pgsql: Document strange jsonb sort order for empty top level arrays Andrew Dunstan <andrew@dunslane.net>
2025-01-03 15:41 pgsql: Document strange jsonb sort order for empty top level arrays Andrew Dunstan <andrew@dunslane.net>
2025-01-03 15:41 pgsql: Document strange jsonb sort order for empty top level arrays Andrew Dunstan <andrew@dunslane.net>
2025-01-03 15:41 pgsql: Document strange jsonb sort order for empty top level arrays Andrew Dunstan <andrew@dunslane.net>
2025-01-03 15:41 pgsql: Document strange jsonb sort order for empty top level arrays Andrew Dunstan <andrew@dunslane.net>
2025-01-03 15:41 pgsql: Document strange jsonb sort order for empty top level arrays Andrew Dunstan <andrew@dunslane.net>

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox