Re: PATCH: jsonpath string methods: lower, upper, initcap, l/r/btrim, replace, split_part - Mailing list pgsql-hackers

From Robert Haas
Subject Re: PATCH: jsonpath string methods: lower, upper, initcap, l/r/btrim, replace, split_part
Date
Msg-id CA+Tgmoa-9tN85bEHfH7TBHa5uV1TwmZJEh_eYkLnwxOV=i6RSg@mail.gmail.com
Whole thread Raw
In response to Re: PATCH: jsonpath string methods: lower, upper, initcap, l/r/btrim, replace, split_part  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-hackers
On Tue, May 13, 2025 at 11:00 PM David E. Wheeler <david@justatheory.com> wrote:
> On May 13, 2025, at 16:24, Florents Tselai <florents.tselai@gmail.com> wrote:
> > As Robert said—and I agree—renaming the existing _tz family would be more trouble than it’s worth, given the need
fordeprecations, migration paths, etc. If we were designing this today, suffixes like _stable or _volatile might have
beenmore appropriate, but at this point, we’re better off staying consistent with the _tz family. 
>
> I get the pragmatism, and don’t want to over-bike-shed, but what a wart to live with. [I just went back and re-read
Robert’spost, and didn’t realize he used exactly the same expression!] Would it really be too effortful to create
_stableor _volatile functions and leave the _tz functions as a sort of legacy? 

No, that wouldn't be too much work, but the issue is that people will
keep using the _tz versions and when we eventually try to remove them
those people will complain no matter how prominent we make the
deprecation notice. If we want to go this route, maybe we should do
something like:

1. Add the new versions with a _s suffix or whatever.

2. Invent a GUC jsonb_tz_warning = { on | off } that advises you to
use the new functions instead, whenever you use the old ones.

3. After N years, flip the default value from off to on.

4. After M additional years, remove the old functions and the GUC.

5. Still get complaints.

--
Robert Haas
EDB: http://www.enterprisedb.com



pgsql-hackers by date:

Previous
From: Robert Haas
Date:
Subject: Re: Avoid orphaned objects dependencies, take 3
Next
From: Jim Jones
Date:
Subject: Re: [PoC] XMLCast (SQL/XML X025)