1
0
mirror of https://github.com/postgres/postgres.git synced 2026-10-23 13:29:09 +03:00

libpq: Stop greasing protocol connections

This reverts commit 4966bd3ed9, which
introduced the 19beta grease campaign, now that Beta 3 has been stamped.
(The reservation and documentation for the grease version code, done in
d8d7c5dc8f, remains.)

Discussion: https://postgr.es/m/CAOYmi%2Bkqt_gn-wvUjJG1j3MM4LDDsRMURSPz2eMxfABu0iGtpw%40mail.gmail.com
Backpatch-through: 19
This commit is contained in:
Jacob Champion
2026-09-01 10:26:10 -07:00
parent 1956251afa
commit ef67d599ef
7 changed files with 16 additions and 141 deletions

View File

@@ -2211,23 +2211,6 @@ postgresql://%2Fvar%2Flib%2Fpostgresql/dbname
<varlistentry id="libpq-connect-max-protocol-version" xreflabel="max_protocol_version">
<term><literal>max_protocol_version</literal></term>
<listitem>
<note>
<para>
During the PostgreSQL 19 beta period, libpq connections that do not
specify a <literal>max_protocol_version</literal> will "grease" the
handshake by sending unsupported startup parameters, including version
<literal>3.9999</literal>, in order to identify software that does not
correctly negotiate the connection. This replaces the default behavior
described below.
</para>
<para>
If you know that a server doesn't properly implement protocol version
negotiation, you can set <literal>max_protocol_version=3.0</literal> to
revert to the standard behavior (preferably after notifying the server's
maintainers that their software needs to be fixed).
</para>
</note>
<para>
Specifies the protocol version to request from the server.
The default is to use version <literal>3.0</literal> of the

View File

@@ -198,17 +198,6 @@
by default.
</para>
<note>
<para>
During the PostgreSQL 19 beta period, libpq will instead default to
requesting protocol version 3.9999, to test that servers and middleware
properly implement protocol version negotiation. Servers that support
negotiation will automatically downgrade to version 3.2 or 3.0. Users can
bypass this beta-only behavior by explicitly setting
<literal>max_protocol_version=3.0</literal> in their connection string.
</para>
</note>
<para>
A single server can support multiple protocol versions. The initial
startup-request message tells the server which protocol version the client