Hi all, While diving into a transformation of the tests of pg_upgrade to TAP, I am getting annoyed by the fact that regress.so is needed if you upgrade an older instance that holds the regression objects from the main regression test suite. The buildfarm code is using a trick to copy regress.so from the source code tree of the old instance into its installation. See in PGBuild/Modules/TestUpgradeXversion.pm: # at some stage we stopped installing regress.so copy "$self->{pgsql}/src/test/regress/regress.so", "$installdir/lib/postgresql/regress.so" unless (-e "$installdir/lib/postgresql/regress.so");
This creates a hard dependency with the source code of the old instance if attempting to create an old instance based on a dump, which is what the buildfarm does, and something that I'd like to get support for in the TAP tests of pg_upgrade in the tree. Could it be possible to install regress.so at least in the same location as pg_regress? This would still require the test to either move regress.so into a location from where the backend could load the library, but at least the library could be accessible without a dependency to the source tree of the old instance upgrading from. To make that really usable, this would require a backpatch, though.. Thoughts? -- Michael
signature.asc
Description: PGP signature