mirror of
https://git.postgresql.org/git/postgresql.git
synced 2026-02-22 22:37:01 +08:00
This unblocks rejection of that syntax. One copy was a misspelling of "SET TABLESPACE pg_default" that instead made no persistent changes. The other copy just needed to populate a DATABASEOID syscache entry. This slightly raises database.sql test coverage of catcache.c, while dbcommands.c coverage remains the same. Reported-by: Tom Lane <tgl@sss.pgh.pa.us> Reviewed-by: Tom Lane <tgl@sss.pgh.pa.us> Discussion: https://postgr.es/m/1802710.1757608564@sss.pgh.pa.us
25 lines
956 B
PL/PgSQL
25 lines
956 B
PL/PgSQL
CREATE DATABASE regression_tbd
|
|
ENCODING utf8 LC_COLLATE "C" LC_CTYPE "C" TEMPLATE template0;
|
|
ALTER DATABASE regression_tbd RENAME TO regression_utf8;
|
|
ALTER DATABASE regression_utf8 SET TABLESPACE regress_tblspace;
|
|
ALTER DATABASE regression_utf8 SET TABLESPACE pg_default;
|
|
ALTER DATABASE regression_utf8 CONNECTION_LIMIT 123;
|
|
|
|
-- Test PgDatabaseToastTable. Doing this with GRANT would be slow.
|
|
BEGIN;
|
|
UPDATE pg_database
|
|
SET datacl = array_fill(makeaclitem(10, 10, 'USAGE', false), ARRAY[5e5::int])
|
|
WHERE datname = 'regression_utf8';
|
|
-- load catcache entry, if nothing else does
|
|
ALTER DATABASE regression_utf8 RENAME TO regression_rename_rolled_back;
|
|
ROLLBACK;
|
|
|
|
CREATE ROLE regress_datdba_before;
|
|
CREATE ROLE regress_datdba_after;
|
|
ALTER DATABASE regression_utf8 OWNER TO regress_datdba_before;
|
|
REASSIGN OWNED BY regress_datdba_before TO regress_datdba_after;
|
|
|
|
DROP DATABASE regression_utf8;
|
|
DROP ROLE regress_datdba_before;
|
|
DROP ROLE regress_datdba_after;
|