Create regress_tblspc in test_setup
An upcoming test needs to use a tablespace as part of its test. Historically, we wanted tablespace creation be done in a dedicated file, so it's easy to disable when testing replication. But that is not necessary anymore, due to allow_in_place_tablespaces. Create regress_tblspace tablespace in test_setup. Move the tablespace test to the end of the parallel schedule, so other tests can use it. Author: Melanie Plageman <melanieplageman@gmail.com> Reviewed-by: Andres Freund <andres@anarazel.de> Discussion: https://postgr.es/m/20200124195226.lth52iydq2n2uilq@alap3.anarazel.de
This commit is contained in:
parent
a9c70b46db
commit
9c83bbcf7e
|
@ -22,8 +22,6 @@ SELECT spcoptions FROM pg_tablespace WHERE spcname = 'regress_tblspacewith';
|
|||
|
||||
-- drop the tablespace so we can re-use the location
|
||||
DROP TABLESPACE regress_tblspacewith;
|
||||
-- create a tablespace we can use
|
||||
CREATE TABLESPACE regress_tblspace LOCATION '';
|
||||
-- This returns a relative path as of an effect of allow_in_place_tablespaces,
|
||||
-- masking the tablespace OID used in the path name.
|
||||
SELECT regexp_replace(pg_tablespace_location(oid), '(pg_tblspc)/(\d+)', '\1/NNN')
|
||||
|
@ -331,7 +329,7 @@ CREATE TABLE testschema.part1 PARTITION OF testschema.part FOR VALUES IN (1);
|
|||
CREATE INDEX part_a_idx ON testschema.part (a) TABLESPACE regress_tblspace;
|
||||
CREATE TABLE testschema.part2 PARTITION OF testschema.part FOR VALUES IN (2);
|
||||
SELECT relname, spcname FROM pg_catalog.pg_tablespace t, pg_catalog.pg_class c
|
||||
where c.reltablespace = t.oid AND c.relname LIKE 'part%_idx';
|
||||
where c.reltablespace = t.oid AND c.relname LIKE 'part%_idx' ORDER BY relname;
|
||||
relname | spcname
|
||||
-------------+------------------
|
||||
part1_a_idx | regress_tblspace
|
||||
|
|
|
@ -18,6 +18,9 @@ SET synchronous_commit = on;
|
|||
-- and most of the core regression tests still expect that.
|
||||
--
|
||||
GRANT ALL ON SCHEMA public TO public;
|
||||
-- Create a tablespace we can use in tests.
|
||||
SET allow_in_place_tablespaces = true;
|
||||
CREATE TABLESPACE regress_tblspace LOCATION '';
|
||||
--
|
||||
-- These tables have traditionally been referenced by many tests,
|
||||
-- so create and populate them. Insert only non-error values here.
|
||||
|
|
|
@ -11,11 +11,6 @@
|
|||
# required setup steps
|
||||
test: test_setup
|
||||
|
||||
# run tablespace by itself, and early, because it forces a checkpoint;
|
||||
# we'd prefer not to have checkpoints later in the tests because that
|
||||
# interferes with crash-recovery testing.
|
||||
test: tablespace
|
||||
|
||||
# ----------
|
||||
# The first group of parallel tests
|
||||
# ----------
|
||||
|
@ -132,3 +127,7 @@ test: event_trigger oidjoins
|
|||
|
||||
# this test also uses event triggers, so likewise run it by itself
|
||||
test: fast_default
|
||||
|
||||
# run tablespace test at the end because it drops the tablespace created during
|
||||
# setup that other tests may use.
|
||||
test: tablespace
|
||||
|
|
|
@ -20,8 +20,6 @@ SELECT spcoptions FROM pg_tablespace WHERE spcname = 'regress_tblspacewith';
|
|||
-- drop the tablespace so we can re-use the location
|
||||
DROP TABLESPACE regress_tblspacewith;
|
||||
|
||||
-- create a tablespace we can use
|
||||
CREATE TABLESPACE regress_tblspace LOCATION '';
|
||||
-- This returns a relative path as of an effect of allow_in_place_tablespaces,
|
||||
-- masking the tablespace OID used in the path name.
|
||||
SELECT regexp_replace(pg_tablespace_location(oid), '(pg_tblspc)/(\d+)', '\1/NNN')
|
||||
|
@ -225,7 +223,7 @@ CREATE TABLE testschema.part1 PARTITION OF testschema.part FOR VALUES IN (1);
|
|||
CREATE INDEX part_a_idx ON testschema.part (a) TABLESPACE regress_tblspace;
|
||||
CREATE TABLE testschema.part2 PARTITION OF testschema.part FOR VALUES IN (2);
|
||||
SELECT relname, spcname FROM pg_catalog.pg_tablespace t, pg_catalog.pg_class c
|
||||
where c.reltablespace = t.oid AND c.relname LIKE 'part%_idx';
|
||||
where c.reltablespace = t.oid AND c.relname LIKE 'part%_idx' ORDER BY relname;
|
||||
\d testschema.part
|
||||
\d+ testschema.part
|
||||
\d testschema.part1
|
||||
|
|
|
@ -23,6 +23,10 @@ SET synchronous_commit = on;
|
|||
--
|
||||
GRANT ALL ON SCHEMA public TO public;
|
||||
|
||||
-- Create a tablespace we can use in tests.
|
||||
SET allow_in_place_tablespaces = true;
|
||||
CREATE TABLESPACE regress_tblspace LOCATION '';
|
||||
|
||||
--
|
||||
-- These tables have traditionally been referenced by many tests,
|
||||
-- so create and populate them. Insert only non-error values here.
|
||||
|
|
Loading…
Reference in New Issue