From a93490a34ce78af9ded9197974076d3d4729bb49 Mon Sep 17 00:00:00 2001 From: Robert Haas Date: Wed, 18 Mar 2026 18:15:36 -0400 Subject: [PATCH v1] pg_plan_advice: Fix multiple copy-and-paste-errors in test case. The second half of this file is meant to test feedback, not generated advice, and is meant to use the statements that it prepares, not leftover prepared statements from earlier in the file. Reported-by: Tom Lane (per BF member avocet) --- contrib/pg_plan_advice/expected/prepared.out | 14 ++++++++------ contrib/pg_plan_advice/sql/prepared.sql | 6 +++--- 2 files changed, 11 insertions(+), 9 deletions(-) diff --git a/contrib/pg_plan_advice/expected/prepared.out b/contrib/pg_plan_advice/expected/prepared.out index fa91a7d3efd..bcab28f03be 100644 --- a/contrib/pg_plan_advice/expected/prepared.out +++ b/contrib/pg_plan_advice/expected/prepared.out @@ -45,9 +45,9 @@ SELECT * FROM ptab; SEQ_SCAN(ptab) /* matched */ (3 rows) --- Prepared, so advice should not be generated. +-- Prepared, so feedback should not be generated. PREPARE pt3 AS SELECT * FROM ptab; -EXPLAIN (COSTS OFF) EXECUTE pt1; +EXPLAIN (COSTS OFF) EXECUTE pt3; QUERY PLAN ------------------ Seq Scan on ptab @@ -56,12 +56,14 @@ EXPLAIN (COSTS OFF) EXECUTE pt1; SET pg_plan_advice.always_store_advice_details = true; -- Prepared, but always_store_advice_details = true, so should show feedback. PREPARE pt4 AS SELECT * FROM ptab; -EXPLAIN (COSTS OFF, PLAN_ADVICE) EXECUTE pt2; - QUERY PLAN ------------------------- +EXPLAIN (COSTS OFF, PLAN_ADVICE) EXECUTE pt4; + QUERY PLAN +-------------------------------- Seq Scan on ptab + Supplied Plan Advice: + SEQ_SCAN(ptab) /* matched */ Generated Plan Advice: SEQ_SCAN(ptab) NO_GATHER(ptab) -(4 rows) +(6 rows) diff --git a/contrib/pg_plan_advice/sql/prepared.sql b/contrib/pg_plan_advice/sql/prepared.sql index 643dff2e27c..6ff4f03e6c5 100644 --- a/contrib/pg_plan_advice/sql/prepared.sql +++ b/contrib/pg_plan_advice/sql/prepared.sql @@ -25,12 +25,12 @@ SET pg_plan_advice.advice = 'SEQ_SCAN(ptab)'; EXPLAIN (COSTS OFF) SELECT * FROM ptab; --- Prepared, so advice should not be generated. +-- Prepared, so feedback should not be generated. PREPARE pt3 AS SELECT * FROM ptab; -EXPLAIN (COSTS OFF) EXECUTE pt1; +EXPLAIN (COSTS OFF) EXECUTE pt3; SET pg_plan_advice.always_store_advice_details = true; -- Prepared, but always_store_advice_details = true, so should show feedback. PREPARE pt4 AS SELECT * FROM ptab; -EXPLAIN (COSTS OFF, PLAN_ADVICE) EXECUTE pt2; +EXPLAIN (COSTS OFF, PLAN_ADVICE) EXECUTE pt4; -- 2.51.0