From: | Heikki Linnakangas <hlinnaka(at)iki(dot)fi> |
---|---|
To: | "pgsql-hackers(at)postgresql(dot)org" <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: Refactoring postmaster's code to cleanup after child exit |
Date: | 2024-07-29 20:16:33 |
Message-ID: | a77061d9-1a76-470c-b18c-4f238342d124@iki.fi |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On 06/07/2024 22:01, Heikki Linnakangas wrote:
> Reading through postmaster code, I spotted some refactoring
> opportunities to make it slightly more readable.
>
> Currently, when a child process exits, the postmaster first scans
> through BackgroundWorkerList to see if it was a bgworker process. If not
> found, it scans through the BackendList to see if it was a backend
> process (which it really should be then). That feels a bit silly,
> because every running background worker process also has an entry in
> BackendList. There's a lot of duplication between
> CleanupBackgroundWorker and CleanupBackend.
>
> Before commit 8a02b3d732, we used to created Backend entries only for
> background worker processes that connected to a database, not for other
> background worker processes. I think that's why we have the code
> structure we have. But now that we have a Backend entry for all bgworker
> processes, it's more natural to have single function to deal with both
> regular backends and bgworkers.
>
> So I came up with the attached patches. This doesn't make any meaningful
> user-visible changes, except for some incidental changes in log messages
> (see commit message for details).
New patch version attached. Fixed conflicts with recent commits, no
other changes.
--
Heikki Linnakangas
Neon (https://neon.tech)
Attachment | Content-Type | Size |
---|---|---|
v2-0001-Fix-outdated-comment-all-running-bgworkers-are-in.patch | text/x-patch | 1.6 KB |
v2-0002-Minor-refactoring-of-assign_backendlist_entry.patch | text/x-patch | 3.2 KB |
v2-0003-Make-BackgroundWorkerList-doubly-linked.patch | text/x-patch | 13.2 KB |
v2-0004-Refactor-code-to-handle-death-of-a-backend-or-bgw.patch | text/x-patch | 19.8 KB |
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2024-07-29 20:18:32 | Re: 040_pg_createsubscriber.pl is slow and unstable (was Re: speed up a logical replica setup) |
Previous Message | Andres Freund | 2024-07-29 20:08:53 | Re: tls 1.3: sending multiple tickets |