From: | Yurii Rashkovskii <yrashk(at)gmail(dot)com> |
---|---|
To: | pgsql-hackers(at)lists(dot)postgresql(dot)org |
Subject: | [PATCH] Extend the length of BackgroundWorker.bgw_library_name |
Date: | 2023-03-13 14:57:47 |
Message-ID: | CA+RLCQyjFV5Y8tG5QgUb6gjteL4S3p+1gcyqWTqigyM93WZ9Pg@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Hi,
I want to suggest a patch against master (it may also be worth backporting
it) that makes it possible to use longer filenames (such as those with
absolute paths) in `BackgroundWorker.bgw_library_name`.
`BackgroundWorker.bgw_library_name` currently allows names up to
BGW_MAXLEN-1, which is generally sufficient if `$libdir` expansion is used.
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.
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).
The patch builds and `make check` succeeds.
Any feedback is welcome!
--
http://omnigres.org
Yurii
Attachment | Content-Type | Size |
---|---|---|
v1-0001-Extend-the-length-of-BackgroundWorker.bgw_library_name.patch | application/octet-stream | 4.0 KB |
From | Date | Subject | |
---|---|---|---|
Next Message | Gilles Darold | 2023-03-13 15:15:12 | Re: [Proposal] Allow pg_dump to include all child tables with the root table |
Previous Message | Masahiko Sawada | 2023-03-13 14:55:29 | Re: [PoC] Improve dead tuple storage for lazy vacuum |