Skip to content

Support PostgreSQL protocol and protocol extension negotiation #7810

Open

Description

The PostgreSQL frontend-backend protocol supports protocol negotiation, so that if the client supports a higher version of the protocol than the server, they can agree to use the lowest common denominator. In practice, that never happens because there haven't been any new protocol versions since that mechanism was introduced. The protocol version is always 3.0. The same mechanism can also be used to negotiate the use of optional protocol extensions. That is also not used in practice because no optional protocol extensions have been introduced.

There were some patches in the v17 release cycle to introduce protocol changes that would've used that mechanism, but they were not committed. For future-proofing, it would be nice to support the protocol negotiation in the proxy.

See NegotiateProtocolVersion at https://www.postgresql.org/docs/devel/protocol-flow.html.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Assignees

No one assigned

    Labels

    c/cloud/proxyComponent: cloud: proxyt/featureIssue type: feature, for new features or requests

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions