"Jonathan S. Katz" <jkatz@postgresql.org> writes:
> On 1/10/24 8:12 PM, Michael Paquier wrote:
>> While looking at the whole picture, an issue with the direct removal
>> of money is how we should handle btree_gin and btree_gist which have
>> operators based on money. We try to keep things compatible at
>> run-time, but could this be worth a hard break in these modules,
>> dropping the older sql scripts used in the modules if we don't have
>> access to money anymore at runtime? These are not popular modules..
>> Any thoughts about that?
> Both modules are pretty popular.
Yeah, I think it's a serious error to assume they aren't used plenty.
Not the money part, but other scalar types.
> It sounds like we'd have to tread a bit lightly because of this, even if
> money is not frequently (or at all) used with btree_gist/gin?
What'd have to happen is that people would have to upgrade to a
version of btree_gin/btree_gist that deletes its money support
before they could pg_upgrade into a core version that lacks money.
So we'd have to ship that version at least one major release before
nuking the core support.
I think the shortest timeline we could possibly do this on is:
v17: label money as deprecated and due for removal in the SGML docs
v18: remove support in btree_gin/btree_gist (and any other affected
extensions)
v19: remove it from core
Note that in v18, people could still use money even in
btree_gin/btree_gist, just by installing a non-default extension
version. So their C code for money would have to stay.
regards, tom lane