Re: More protocol.h replacements this time into walsender.c

Jacob Champion <jacob.champion@enterprisedb.com>

From: Jacob Champion <jacob.champion@enterprisedb.com>
To: Nathan Bossart <nathandbossart@gmail.com>
Cc: Álvaro Herrera <alvherre@kurilemu.de>, Dave Cramer <davecramer@gmail.com>, PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2025-08-04T21:11:26Z
Lists: pgsql-hackers

Commits

Same data as JSON: GET /api/v1/messages/:b64id/commits the thread's linked commits as JSON, with link sources. API reference →
  1. Expand usage of macros for protocol characters.

  2. Rename XLogData protocol message to WALData

  3. Use PqMsg_* macros in walsender.c

On Mon, Aug 4, 2025 at 12:56 PM Nathan Bossart <nathandbossart@gmail.com> wrote:
>
> The replication protocol uses many of the
> existing PqMsg macros already, so it would be a little strange if only a
> subset of the replication protocol messages used the special prefix.

May I ask why? These messages are legitimately different; they're
tunneled through CopyData, so their reservations don't collide with
the top-level codes.

> There's also backups, which use the replication protocol but
> have their own special characters [0].  If we're going the prefix route,
> would we add another prefix for those, or use the replication one?

My vote would be to add another. 'p' is a password message in the
top-level protocol (one of many, actually), a progress message in a
backup stream, and a status request in a replication stream, so I
think they deserve their own namespaces.

--Jacob