pgsql: Fix the public schema's permissions in a separate test script. - Mailing list pgsql-committers

From Tom Lane
Subject pgsql: Fix the public schema's permissions in a separate test script.
Date
Msg-id E1myKgb-0006uo-Ns@gemulon.postgresql.org
Whole thread Raw
List 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(-)


pgsql-committers by date:

Previous
From: Tom Lane
Date:
Subject: Re: pgsql: Revoke PUBLIC CREATE from public schema, now owned by pg_databas
Next
From: Michael Paquier
Date:
Subject: pgsql: Add option -N/--no-sync to pg_upgrade