Re: [PATCH] Extend the length of BackgroundWorker.bgw_library_name - Mailing list pgsql-hackers

From Yurii Rashkovskii
Subject Re: [PATCH] Extend the length of BackgroundWorker.bgw_library_name
Date
Msg-id CA+RLCQzdWuwvtX14HO-5T0f5oTBHE9Yh4-C+=bHk0GTF2jDiOw@mail.gmail.com
Whole thread Raw
In response to Re: [PATCH] Extend the length of BackgroundWorker.bgw_library_name  (Nathan Bossart <nathandbossart@gmail.com>)
List pgsql-hackers
Nathan,

Thank you for your review. 

Indeed, my motivation for doing the change the way I did it was that only bgw_library_name is expected to be longer, whereas it is much less of a concern for other fields. If we have increased BGW_MAXLEN, it would have increased the size of BackgroundWorker for little to no benefit. 

On Mon, Mar 13, 2023 at 10:35 AM Nathan Bossart <nathandbossart@gmail.com> wrote:
On Mon, Mar 13, 2023 at 07:57:47AM -0700, Yurii Rashkovskii wrote:
> However, there are use cases where [potentially] longer names are
> expected/desired; for example, test benches (where library files may not
> [or can not] be copied to Postgres installation) or alternative library
> installation methods that do not put them into $libdir.
>
> 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.

I see that BGW_MAXLEN was originally set to 64 in 2013 (7f7485a) [0], but
was increased to 96 in 2018 (3a4b891) [1].  It seems generally reasonable
to me to increase the length of bgw_library_name further for the use-case
you describe, but I wonder if it'd be better to simply increase BGW_MAXLEN
again.  However, IIUC bgw_library_name is the only field that is likely to
be used for absolute paths, so only increasing that one to MAXPGPATH makes
sense.

[0] https://postgr.es/m/CA%2BTgmoYtQQ-JqAJPxZg3Mjg7EqugzqQ%2BZBrpnXo95chWMCZsXw%40mail.gmail.com
[1] https://postgr.es/m/304a21ab-a9d6-264a-f688-912869c0d7c6%402ndquadrant.com

--
Nathan Bossart
Amazon Web Services: https://aws.amazon.com


--

pgsql-hackers by date:

Previous
From: Alvaro Herrera
Date:
Subject: Re: Lock mode in ExecMergeMatched()
Next
From: Tom Lane
Date:
Subject: Re: Bug in jsonb_in function (14 & 15 version are affected)