Re: pgsql: Separate RecoveryConflictReasons from procsignals

Bertrand Drouvot <bertranddrouvot.pg@gmail.com>

From: Bertrand Drouvot <bertranddrouvot.pg@gmail.com>
To: Heikki Linnakangas <heikki.linnakangas@iki.fi>
Cc: pgsql-committers@lists.postgresql.org
Date: 2026-02-10T15:19:09Z
Lists: pgsql-hackers
Hi,

On Tue, Feb 10, 2026 at 02:32:37PM +0000, Heikki Linnakangas wrote:
> Separate RecoveryConflictReasons from procsignals
> 
> Share the same PROCSIG_RECOVERY_CONFLICT flag for all recovery
> conflict reasons. To distinguish, have a bitmask in PGPROC to indicate
> the reason(s).

I did not look at the thread, so sorry to be late, but that makes the size of PGPROC
going from 832 to 840 bytes, so not a multiple of 64 anymore. Is that something
to worry about? (same kind of discussion in [1]).

[1]: https://postgr.es/m/tw53roer2j4quxh7vlyv62drc5fo6c6zdltvl6d2dttqa62uhi%40stwlpdwlftpj

Regards,

-- 
Bertrand Drouvot
PostgreSQL Contributors Team
RDS Open Source Databases
Amazon Web Services: https://aws.amazon.com



Commits

  1. Use C11 alignas in typedef definitions

  2. Align PGPROC to cache line boundary

  3. Rearrange fields in PGPROC, for clarity

  4. Split PGPROC 'links' field into two, for clarity

  5. Remove useless store to local variable

  6. Separate RecoveryConflictReasons from procsignals