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
pull/37/head
Michael Paquier 7 years ago
parent 251f57460f
commit 396676b0ec
  1. 5
      src/test/regress/expected/temp.out
  2. 5
      src/test/regress/sql/temp.sql

@ -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;

@ -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;

Loading…
Cancel
Save