Move tablespace path re-creation from the makefiles to pg_regress

Michael Paquier <michael@paquier.xyz>

Commit: 6c788d9f6aadb41d76a72d56149268371a7895ee
Author: Michael Paquier <michael@paquier.xyz>
Date: 2021-03-10T05:50:00Z
Releases: 14.0
Move tablespace path re-creation from the makefiles to pg_regress

Moving this logic into pg_regress fixes a potential failure with
parallel tests when pg_upgrade and the main regression test suite both
trigger the makefile rule that cleaned up testtablespace/ under
src/test/regress.  Even if pg_upgrade was triggering this rule, it has
no need to do so as it uses a different tablespace path.  So if
pg_upgrade triggered the makefile rule for the tablespace setup while
the main regression test suite ran the tablespace cases, it would fail.

61be85a was a similar attempt at achieving that, but that broke cases
where the regression tests require to run under an Administrator
account, like with Appveyor.

Reported-by: Andres Freund, Kyotaro Horiguchi
Reviewed-by: Peter Eisentraut
Discussion: https://postgr.es/m/20201209012911.uk4d6nxcnkp7ehrx@alap3.anarazel.de

Files

PathChange+/−
src/bin/pg_upgrade/test.sh modified +0 −1
src/test/regress/GNUmakefile modified +7 −14
src/test/regress/pg_regress.c modified +6 −8
src/tools/msvc/vcregress.pl modified +0 −1

Discussion