Restore smgrtruncate() prototype in back-branches.
Thomas Munro <tmunro@postgresql.org>
Restore smgrtruncate() prototype in back-branches. It's possible that external code is calling smgrtruncate(). Any external callers might like to consider the recent changes to RelationTruncate(), but commit 38c579b0 should not have changed the function prototype in the back-branches, per ABI stability policy. Restore smgrtruncate()'s traditional argument list in the back-branches, but make it a wrapper for a new function smgrtruncate2(). The three callers in core can use smgrtruncate2() directly. In master (18-to-be), smgrtruncate2() is effectively renamed to smgrtruncate(), so this wart is cleaned up. Reviewed-by: Michael Paquier <michael@paquier.xyz> Discussion: https://postgr.es/m/CA%2BhUKG%2BThae6x6%2BjmQiuALQBT2Ae1ChjMh1%3DkMvJ8y_SBJZrvA%40mail.gmail.com
Files
| Path | Change | +/− |
|---|---|---|
| contrib/pg_visibility/pg_visibility.c | modified | +1 −1 |
| src/backend/catalog/storage.c | modified | +2 −2 |
| src/backend/storage/smgr/smgr.c | modified | +22 −2 |
| src/include/storage/smgr.h | modified | +3 −1 |
Discussion
- BUG #18146: Rows reappearing in Tables after Auto-Vacuum Failure in PostgreSQL on Windows 45 messages · 2023-10-03 → 2025-04-06