Re: [PATCH] Extend the length of BackgroundWorker.bgw_library_name
Aleksander Alekseev <aleksander@timescale.com>
From: Aleksander Alekseev <aleksander@timescale.com>
To: pgsql-hackers@lists.postgresql.org
Cc: Yurii Rashkovskii <yrashk@gmail.com>
Date: 2023-04-24T11:01:30Z
Lists: pgsql-hackers
Hi, > The trade-off of this patch is that the `BackgroundWorker` structure becomes larger. From my perspective, this is a reasonable cost (less than a kilobyte of extra space per worker). Agree. > The patch is backwards-compatible and ensures that bgw_library_name stays *at least* as long as BGW_MAXLEN. Existing external code that uses BGW_MAXLEN is a length boundary (for example, in `strncpy`) will continue to work as expected. There is a mistake in the comment though: ``` +/* + * Ensure bgw_function_name's size is backwards-compatible and sensible + */ +StaticAssertDecl(MAXPGPATH >= BGW_MAXLEN, "MAXPGPATH must be at least equal to BGW_MAXLEN"); ``` library_name, not function_name. Also I think the comment should be more detailed, something like "prior to PG17 we used ... but since PG17 ... which may cause problems if ...". -- Best regards, Aleksander Alekseev
Commits
-
Increase size of bgw_library_name.
- 957845789bb9 17.0 landed