From: Tom Lane <tgl@sss.pgh.pa.us>
To: pgsql-committers@lists.postgresql.org
Subject: pgsql: Make jsonpath .string() be immutable for datetimes.
Date: Thu, 12 Sep 2024 18:30:32 +0000
Message-ID: <E1sooaO-000mhS-GX@gemulon.postgresql.org> (raw)
Make jsonpath .string() be immutable for datetimes.
Discussion of commit ed055d249 revealed that we don't actually
want jsonpath's .string() method to depend on DateStyle, nor
TimeZone either, because the non-"_tz" jsonpath functions are
supposed to be immutable. Potentially we could allow a TimeZone
dependency in the "_tz" variants, but it seems better to just
uniformly define this method as returning the same string that
jsonb text output would do. That's easier to implement too,
saving a couple dozen lines.
Patch by me, per complaint from Peter Eisentraut. Back-patch
to v17 where this feature came in (in 66ea94e8e). Also
back-patch ed055d249 to provide test cases.
Discussion: https://postgr.es/m/5e8879d0-a3c8-4be2-950f-d83aa2af953a@eisentraut.org
Branch
------
master
Details
-------
https://git.postgresql.org/pg/commitdiff/cb599b9ddfccd15e77f4c167c4e5bdf1ddc3af38
Modified Files
--------------
doc/src/sgml/func.sgml | 7 ++-
src/backend/utils/adt/jsonpath_exec.c | 34 +++----------
src/test/regress/expected/jsonb_jsonpath.out | 73 +++++++++-------------------
src/test/regress/sql/jsonb_jsonpath.sql | 12 ++---
4 files changed, 39 insertions(+), 87 deletions(-)
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-committers@postgresql.org
Cc: tgl@sss.pgh.pa.us, pgsql-committers@lists.postgresql.org
Subject: Re: pgsql: Make jsonpath .string() be immutable for datetimes.
In-Reply-To: <E1sooaO-000mhS-GX@gemulon.postgresql.org>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
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