Re: Allow placeholders in ALTER ROLE w/o superuser
Pavel Borisov <pashkin.elfe@gmail.com>
From: Pavel Borisov <pashkin.elfe@gmail.com>
To: Justin Pryzby <pryzby@telsasoft.com>
Cc: Tom Lane <tgl@sss.pgh.pa.us>, Alexander Korotkov <aekorotkov@gmail.com>, Alvaro Herrera <alvherre@alvh.no-ip.org>, Steve Chavez <steve@supabase.io>, Kyotaro Horiguchi <horikyota.ntt@gmail.com>, nathandbossart@gmail.com, pgsql-hackers@postgresql.org
Date: 2023-01-02T08:53:30Z
Lists: pgsql-hackers
Attachments
- 0001-meson-Add-running-test-setup-as-a-replacement-for-in.patch (application/octet-stream) patch 0001
Hi, Justin! On Wed, 28 Dec 2022 at 21:28, Justin Pryzby <pryzby@telsasoft.com> wrote: > > On Tue, Dec 27, 2022 at 11:29:40PM -0500, Tom Lane wrote: > > Justin Pryzby <pryzby@telsasoft.com> writes: > > > This fails when run more than once: > > > time meson test --setup running --print test_pg_db_role_setting-running/regress > > > > Ah. > > > > > It didn't fail for you because it says: > > > ./src/test/modules/test_pg_db_role_setting/Makefile > > > +# disable installcheck for now > > > +NO_INSTALLCHECK = 1 > > > > So ... exactly why is the meson infrastructure failing to honor that? > > This test looks sufficiently careless about its side-effects that > > I completely agree with the decision to not run it in pre-existing > > installations. Failing to drop a created superuser is just one of > > its risk factors --- it also leaves around pg_db_role_setting entries. > > Meson doesn't try to parse the Makefiles (like the MSVC scripts) but > (since 3f0e786ccb) has its own implementation, which involves setting > 'runningcheck': false. > > 096dd80f3c seems to have copied the NO_INSTALLCHECK from oat's makefile, > but didn't copy "runningcheck" from oat's meson.build (but did copy its > regress_args). I completely agree with your analysis. Fixes by 3f0e786ccbf5 to oat and the other modules tests came just a couple of days before committing the main pg_db_role_setting commit 096dd80f3c so they were forgotten to be included into it. I support committing the same fix to pg_db_role_setting test and added this minor fix as a patch to this thread. Kind regards, and happy New year! Pavel Borisov, Supabase.
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Remove extra regress check arguments from test_pg_db_role_setting
- 529da086ba7f 16.0 landed
-
meson: Add 'running' test setup, as a replacement for installcheck
- afdd9f7f0e00 16.0 landed
-
Add USER SET parameter values for pg_db_role_setting
- 096dd80f3ccc 16.0 landed
-
Fix sloppy cleanup of roles in privileges.sql.
- b62303794efd 16.0 cited
-
Drop test user when done with it.
- f31111bbe81d 12.0 cited
-
GRANT rights to CURRENT_USER instead of adding roles
- 6928484bda45 9.6.0 cited
-
Clean up roles from roleattributes test
- 072710dff3ee 9.6.0 cited
-
Make repeated 'make installcheck' runs work
- b22b77068380 9.5.0 cited