Re: Add new protocol message to change GUCs for usage with future protocol-only GUCs

From: Robert Haas <robertmhaas(at)gmail(dot)com>
To: "David G(dot) Johnston" <david(dot)g(dot)johnston(at)gmail(dot)com>
Cc: Jelte Fennema-Nio <postgres(at)jeltef(dot)nl>, Heikki Linnakangas <hlinnaka(at)iki(dot)fi>, Jacob Champion <jacob(dot)champion(at)enterprisedb(dot)com>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Jacob Burroughs <jburroughs(at)instructure(dot)com>, Dave Cramer <davecramer(at)gmail(dot)com>, Peter Smith <smithpb2250(at)gmail(dot)com>, PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>, "Andrey M(dot) Borodin" <x4mmm(at)yandex-team(dot)ru>, Pavel Stehule <pavel(dot)stehule(at)gmail(dot)com>, Jeff Davis <pgsql(at)j-davis(dot)com>, Peter Eisentraut <peter(at)eisentraut(dot)org>, Daniele Varrazzo <daniele(dot)varrazzo(at)gmail(dot)com>
Subject: Re: Add new protocol message to change GUCs for usage with future protocol-only GUCs
Date: 2024-08-20 17:17:55
Message-ID: CA+TgmoZgmwnYLPkNX4ZjtEuGx+ragYOMbi9kUgU2cA8mV5H0nQ@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Tue, Aug 20, 2024 at 1:02 PM David G. Johnston
<david(dot)g(dot)johnston(at)gmail(dot)com> wrote:
> So basically my proposal amounted to making every update a "major version update" and changing the behavior surrounding NegotiateProtocolVersion so it applies to major version differences. I'll stand by that change in definition. The current one doesn't seem all that useful anyway, and as we only have a single version, definitely hasn't been materially implemented. Otherwise, at some point a client that knows both v3 and v4 will exist and its connection will be rejected instead of downgraded by a v3-only server even though such a downgrade would be possible. I suspect we'd go ahead and change the rule then - so why not just do so now, while getting rid of the idea that minor versions are a thing.
>
> I suppose we could leave minor versions for patch releases of the main server version - which still leaves the first new feature of a release incrementing the major version. That would be incidental to changing how we handle major versions.

I don't see how this makes life any better for anyone. At some point
in the future we may decide to make a protocol change that is big and
breaks a lot of stuff, but the current goals are all to make minor
changes that break as little stuff as possible. I think it's
appropriate to call the latter a "minor" change and the former a
"major" change. If we adopted this proposal, then we could end up in a
situation where versions 3 through 17 are all mostly compatible and
then version 18 is something totally different. It sounds much better
to me to have versions 3.0 through 3.14 and then eventually 4.0. This
is also what the person who designed the current protocol version
numbering scheme seems to have had in mind, even if the implementation
to make it a reality has been a bit lacking.

--
Robert Haas
EDB: http://www.enterprisedb.com

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message David G. Johnston 2024-08-20 17:21:54 Re: Add new protocol message to change GUCs for usage with future protocol-only GUCs
Previous Message Jelte Fennema-Nio 2024-08-20 17:03:56 Re: Partial aggregates pushdown