Re: libpq: Bump protocol version to version 3.2 at least until the first/second beta

From: Jacob Champion <jacob(dot)champion(at)enterprisedb(dot)com>
To: Jelte Fennema-Nio <postgres(at)jeltef(dot)nl>
Cc: Andres Freund <andres(at)anarazel(dot)de>, PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>, Heikki Linnakangas <hlinnaka(at)iki(dot)fi>, Robert Haas <robertmhaas(at)gmail(dot)com>
Subject: Re: libpq: Bump protocol version to version 3.2 at least until the first/second beta
Date: 2026-01-23 23:38:48
Message-ID: CAOYmi+m64_emVRc+33m2W1kK2X0iTeE6oX395joCeVey1ohwyQ@mail.gmail.com
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Wed, Jan 14, 2026 at 2:56 PM Jacob Champion
<jacob(dot)champion(at)enterprisedb(dot)com> wrote:
> Thanks, I'll plan to squash those in v5, and probably kick 0005 out
> into its own thread to give people a chance to object even if they're
> ignoring the grease stuff.

0001, 0003, and 0005 are committed. v5 is attached with several
changes, described below.

On Wed, Jan 14, 2026 at 12:23 PM Jacob Champion
<jacob(dot)champion(at)enterprisedb(dot)com> wrote:
> I want to more clearly decouple ourselves from TLS's GREASE in the
> documentation and comments.

Done. Unfortunately the rewrites were too difficult to put into nice
squash! commits, since they ended up being spread across the split
described below, so I've also attached an "overall" diff file to try
to highlight what I changed from v3-0002.

One thing I tried to do here was separate the beta-only behavior into
<note>s, so that documentation writers can still review and patch the
language that's going to be published for release. I don't think that
will confuse the limited audience that is going to be reading this.

> I will also work on splitting 0002 into revertable and not-revertable
> halves. The grease constant probably needs to remain documented and
> reserved even if it doesn't do anything for 19.0.

Done. My proposed split is in v5-0002 (which stays) and -0003 (which
gets reverted).

I also added an 0001 which (IMO) improves our documentation around
this, and adds a registry of sorts for the protocol extension
parameters. I'm not completely thrilled about the code and formatting
of that new registry table, but I think what I have is better than
nothing, so I'm going to stop fighting with docbook about this.

> I'd like reserve a (protected?) wiki page, or something of the sort,
> that we can point people to directly if they hit any grease failures.

This still needs to be done/discussed, but we have a good amount of time.

> Finally: is there any appetite for retaining the ability to grease
> connections as production functionality, e.g. via
> `max_protocol_version=grease`?

This is on the back burner for now. (As stated upthread, it doesn't
need to block the beta-only behavior.)

WDYT?

Thanks,
--Jacob

Attachment Content-Type Size
since-v3.diff.txt text/plain 19.4 KB
v5-0001-doc-Expand-upon-protocol-versions-and-extensions.patch application/octet-stream 6.8 KB
v5-0002-libpq-Prepare-for-protocol-grease-during-19beta.patch application/octet-stream 5.6 KB
v5-0003-libpq-Grease-the-protocol-by-default.patch application/octet-stream 9.1 KB

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Jelte Fennema-Nio 2026-01-23 23:39:56 Re: libpq: Bump protocol version to version 3.2 at least until the first/second beta
Previous Message Tom Lane 2026-01-23 22:20:20 Re: alignas (C11)