pgsql: Fix the public schema's permissions in a separate test script.

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: Fix the public schema's permissions in a separate test script.
Date: 2021-12-17 21:22:41
Message-ID: E1myKgb-0006uo-Ns@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Fix the public schema's permissions in a separate test script.

In the wake of commit b073c3ccd, it's necessary to grant create
permissions on the public schema to PUBLIC to get many of the
core regression test scripts to pass. That commit did so via the
quick-n-dirty expedient of adding the GRANT to the tablespace test,
which runs first. This is problematic for single-machine
replication testing, though. The least painful way to run the
regression tests on such a setup is to skip the tablespace test,
and that no longer works.

To fix, let's invent a separate "test_setup" script to run first,
and put the GRANT there. Revert b073c3ccd's changes to
the tablespace.source files.

In the future it might be good to try to reduce coupling between
the various test scripts by having test_setup create widely-used
objects, with the goal that most of the scripts could run after
having run only test_setup. That's going to take some effort,
so this commit just addresses my immediate pain point.

Discussion: https://postgr.es/m/1363170.1639763559@sss.pgh.pa.us

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/944dc45d1b633c4d612cdff9f15153ed609eaa35

Modified Files
--------------
src/test/regress/expected/test_setup.out | 3 +++
src/test/regress/input/tablespace.source | 5 +----
src/test/regress/output/tablespace.source | 4 +---
src/test/regress/parallel_schedule | 5 ++++-
src/test/regress/sql/test_setup.sql | 3 +++
5 files changed, 12 insertions(+), 8 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Michael Paquier 2021-12-18 07:29:11 pgsql: Add option -N/--no-sync to pg_upgrade
Previous Message Tom Lane 2021-12-17 19:57:08 Re: pgsql: Revoke PUBLIC CREATE from public schema, now owned by pg_databas