Re: pg_regress cleans up tablespace twice.
Michael Paquier <michael@paquier.xyz>
From: Michael Paquier <michael@paquier.xyz>
To: Thomas Munro <thomas.munro@gmail.com>
Cc: Kyotaro Horiguchi <horikyota.ntt@gmail.com>, Tom Lane <tgl@sss.pgh.pa.us>, PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2020-06-20T02:42:30Z
Lists: pgsql-hackers
On Sat, Jun 20, 2020 at 09:33:26AM +1200, Thomas Munro wrote: > Hmm, somehow this (well I guess it's this commit based on timing and > the area it touches, not sure exactly why) made cfbot's Windows build > fail, like this: > > --- C:/projects/postgresql/src/test/regress/expected/tablespace.out > 2020-06-19 21:26:24.661817000 +0000 > +++ C:/projects/postgresql/src/test/regress/results/tablespace.out > 2020-06-19 21:26:28.613257500 +0000 > @@ -2,83 +2,78 @@ > CREATE TABLESPACE regress_tblspacewith LOCATION > 'C:/projects/postgresql/src/test/regress/testtablespace' WITH > (some_nonexistent_parameter = true); -- fail > ERROR: unrecognized parameter "some_nonexistent_parameter" > CREATE TABLESPACE regress_tblspacewith LOCATION > 'C:/projects/postgresql/src/test/regress/testtablespace' WITH > (random_page_cost = 3.0); -- ok > +ERROR: could not set permissions on directory > "C:/projects/postgresql/src/test/regress/testtablespace": Permission > denied > > Any ideas? Here's what it does: > > https://github.com/macdice/cfbot/tree/master/appveyor I am not sure, and I am not really familiar with this stuff. Your code does a simple vcregress check, and that should take care of automatically cleaning up the testtablespace path. The buildfarm uses this code for MSVC builds and does not complain, nor do my own VMs complain. A difference in the processing after 2b2a070d is that the tablespace cleanup/creation does not happen while holding a restricted token [1] anymore because it got out of pg_regress.c. Are there any kind of restrictions applied to the user running appveyor on Windows? [1]: https://docs.microsoft.com/en-us/windows/win32/secauthz/restricted-tokens -- Michael
Commits
-
Revert "Remove reset of testtablespace from pg_regress on Windows"
- 61be85afabba 14.0 landed
-
Remove reset of testtablespace from pg_regress on Windows
- 2b2a070d98b2 14.0 landed
-
Lower privilege level of programs calling regression_main
- ce5d3424d641 12.0 cited