Skip to content

pgwire: new methods in HBA config break mixed-version clusters #43716

@knz

Description

@knz

If a user installs a gss HBA rule in a cluster using a license, then it is not possible any more to run the cluster using a pure OSS binary because the gss method is not present in the OSS binary.

Also, suppose we implement a new auth method foo in 20.1.
Then I am in the process of ugprading a 19.2 cluster, and I have both 19.2 and 20.1 nodes.

If I add a new rule host all all all foo in my hba.conf in 20.1, the following will happen:

  • the conf change will be accepted by the 20.1 node.
  • all the 19.2 nodes will load the conf then start to reject all client connections because it does not know how to interpret the new auth method.

The fix is simple: assume in the auth code in 19.2 that unknown configs come from future versions.

cc @mjibson

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions