Re: retire MemoryContextResetAndDeleteChildren backwards compatibility macro
Nathan Bossart <nathandbossart@gmail.com>
From: Nathan Bossart <nathandbossart@gmail.com>
To: Dagfinn Ilmari Mannsåker <ilmari@ilmari.org>
Cc: Alvaro Herrera <alvherre@alvh.no-ip.org>, pgsql-hackers@postgresql.org
Date: 2023-11-14T17:01:15Z
Lists: pgsql-hackers
On Tue, Nov 14, 2023 at 04:36:44PM +0000, Dagfinn Ilmari Mannsåker wrote: > Is there a preprocessor symbol that is defined when building Postgres > itself (and extensions in /contrib/), but not third-party extensions (or > vice versa)? If so, the macro could be guarded by that, so that uses > don't accientally sneak back in. I'm not aware of anything like that. > There's also __attribute__((deprecated)) (and and __declspec(deprecated) > for MSVC), but that can AFAIK only be attached to functions and > variables, not macros, so it would have to be changed to a static inline > function. It might be worth introducing pg_attribute_deprecated() in c.h. I'm not too worried about this particular macro, but it seems handy in general. -- Nathan Bossart Amazon Web Services: https://aws.amazon.com
Commits
-
Retire MemoryContextResetAndDeleteChildren() macro.
- 6a72c42fd5af 17.0 landed
-
Simplify code by getting rid of SPI_push, SPI_pop, SPI_restore_connection.
- 1833f1a1c3b0 10.0 cited
-
Redefine MemoryContextReset() as deleting, not resetting, child contexts.
- eaa5808e8ec4 9.5.0 cited
-
tuplestore_donestoring() isn't needed anymore, but provide a no-op
- dd04e958c8b0 7.4.1 cited