Enforce non-parallel plan when calling current_schema() in newly-added test

current_schema() gets called in the recently-added regression test from
c5660e0, and can be used in a parallel context, causing its call to fail
when creating a temporary schema.

Per buildfarm members crake and lapwing.

Discussion: https://postgr.es/m/20190118005949.GD1883@paquier.xyz
This commit is contained in:
Michael Paquier 2019-01-18 10:51:39 +09:00
parent 251f57460f
commit 396676b0ec
2 changed files with 8 additions and 2 deletions

View File

@ -360,8 +360,11 @@ prepare transaction 'twophase_tab';
ERROR: cannot PREPARE a transaction that has operated on temporary tables
-- Corner case: current_schema may create a temporary schema if namespace
-- creation is pending, so check after that. First reset the connection
-- to remove the temporary namespace.
-- to remove the temporary namespace, and make sure that non-parallel plans
-- are used.
\c -
SET max_parallel_workers = 0;
SET max_parallel_workers_per_gather = 0;
SET search_path TO 'pg_temp';
BEGIN;
SELECT current_schema() ~ 'pg_temp' AS is_temp_schema;

View File

@ -274,8 +274,11 @@ prepare transaction 'twophase_tab';
-- Corner case: current_schema may create a temporary schema if namespace
-- creation is pending, so check after that. First reset the connection
-- to remove the temporary namespace.
-- to remove the temporary namespace, and make sure that non-parallel plans
-- are used.
\c -
SET max_parallel_workers = 0;
SET max_parallel_workers_per_gather = 0;
SET search_path TO 'pg_temp';
BEGIN;
SELECT current_schema() ~ 'pg_temp' AS is_temp_schema;