Re: [PATCH] Extend the length of BackgroundWorker.bgw_library_name

From: Aleksander Alekseev <aleksander(at)timescale(dot)com>
To: pgsql-hackers(at)lists(dot)postgresql(dot)org
Cc: Yurii Rashkovskii <yrashk(at)gmail(dot)com>
Subject: Re: [PATCH] Extend the length of BackgroundWorker.bgw_library_name
Date: 2023-04-24 11:01:30
Message-ID: CAJ7c6TOj44NhDGdFyd0d8Axd8y9kjhL=m0iC_O97qMzVGEuabw@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
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

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Ajit Awekar 2023-04-24 11:28:08 Re: Memory leak in CachememoryContext
Previous Message Etsuro Fujita 2023-04-24 10:10:39 Re: postgres_fdw: wrong results with self join + enable_nestloop off