pgsql: Compare only major versions in AdjustUpgrade.pm - Mailing list pgsql-committers

From Alvaro Herrera
Subject pgsql: Compare only major versions in AdjustUpgrade.pm
Date
Msg-id E1qNxP3-0017ZD-F8@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
Compare only major versions in AdjustUpgrade.pm

Because PostgreSQL::Version is very nuanced about development version
numbers, the comparison to 16beta2 makes it think that that release is
older than 16, therefore applying a database tweak that doesn't work
there (the comparison is only supposed to match when run on version 15).
As suggested by Andrew Dunstan, fix by having AdjustUpgrade.pm public
methods create a separate PostgreSQL::Version object to use for these
comparisons, that only carries the major version number.

While at it, have the same methods ensure that the objects given are of
the expected type.

Backpatch to 16.  This module goes all the way back to 9.2, but there's
probably no need for this fix except where betas still live.

Co-authored-by: Andrew Dunstan <andrew@dunslane.net>
Discussion: https://postgr.es/m/20230719110504.zbu74o54bqqlsufb@alvherre.pgsql

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/6061adedf53cbe0f94a52dd02465abf8c7c9fb43

Modified Files
--------------
src/test/perl/PostgreSQL/Test/AdjustUpgrade.pm | 18 ++++++++++++++++++
1 file changed, 18 insertions(+)


pgsql-committers by date:

Previous
From: Michael Paquier
Date:
Subject: pgsql: pgbench: Use COPY for client-side data generation
Next
From: Alvaro Herrera
Date:
Subject: pgsql: Make test_decoding ddl.out shorter