Re: Do away with a few backwards compatibility macros
Nathan Bossart <nathandbossart@gmail.com>
From: Nathan Bossart <nathandbossart@gmail.com>
To: Bharath Rupireddy <bharath.rupireddyforpostgres@gmail.com>
Cc: PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2023-11-16T15:46:22Z
Lists: pgsql-hackers
On Thu, Nov 16, 2023 at 07:11:41PM +0530, Bharath Rupireddy wrote: > After a recent commit 6a72c42f (a related discussion [1]) which > removed MemoryContextResetAndDeleteChildren(), I think there are a > couple of other backward compatibility macros out there that can be > removed. These macros are tuplestore_donestoring() which was > introduced by commit dd04e95 21 years ago and SPI_push() and friends > which were made no-ops macros by commit 1833f1a 7 years ago. Debian > code search shows very minimal usages of these macros. Here's a patch > attached to remove them. I'm fine with this because all of these macros are no-ops for all supported versions of Postgres. Even if an extension is using them today, you'll get the same behavior as before if you remove the uses and rebuild against v12-v16. -- Nathan Bossart Amazon Web Services: https://aws.amazon.com
Commits
-
Retire a few backwards compatibility macros.
- 75680c3d805e 17.0 landed
-
Retire MemoryContextResetAndDeleteChildren() macro.
- 6a72c42fd5af 17.0 cited
-
Simplify code by getting rid of SPI_push, SPI_pop, SPI_restore_connection.
- 1833f1a1c3b0 10.0 cited
-
tuplestore_donestoring() isn't needed anymore, but provide a no-op
- dd04e958c8b0 7.4.1 cited