Re: BUG #18240: Undefined behaviour in cash_mul_flt8() and friends
Michael Paquier <michael@paquier.xyz>
From: Michael Paquier <michael@paquier.xyz>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: David Rowley <dgrowleyml@gmail.com>, exclusion@gmail.com, pgsql-bugs@lists.postgresql.org
Date: 2023-12-16T09:19:22Z
Lists: pgsql-bugs
On Tue, Dec 12, 2023 at 09:37:58AM -0500, Tom Lane wrote: > ... I doubt that a contrib module would solve the problem for people > who can't afford a rewrite. pg_upgrade requires that datatype OIDs > stay the same, which is something I don't believe a contrib module > could manage. We've run into that before if memory serves. Is it > time to do something about that? Perhaps we could allow extension > modules to use binary_upgrade_set_next_pg_type_oid, and then somehow > reserve the money and _money OIDs forever? You mean with an integration in binary dumps? I don't see why it would not work and this facility may prove to be useful for out-of-core extension, assuming that this can be made transparent based on some new .control properties on the upgrade cluster, I guess.. Now, I am not sure that we're making users a favor in keeping around a data type that's kind of obsolete these days, particularly when all of them basically require handling of fractional cents when doing serious calculations. That's a trap in disguise, even if tying data to a locale for the unit sounds appealing for some applications. -- Michael
Commits
-
Add overflow checks to money type.
- e8dfe0430fad 14.13 landed
- c5321e9651c5 13.16 landed
- b82791c8fc2c 15.8 landed
- 4f962815871f 12.20 landed
- 3764ee47f78c 17.0 landed
- 34e9dce69c46 16.4 landed
- 22b0ccd65d27 18.0 landed
-
Reduce dependency to money data type in main regression test suite
- 31acee4b66f9 17.0 landed