postgres.git / summary / log / commit / refs

commit    4b14e18714e10ac930ca53938fc6fa1a4fda50c7
Author:   David Rowley <drowley@postgresql.org>
Date:     Thu Nov 02 10:16:34 2023 +0000
First released in: 17.0

    Attempt to stabilize postgres_fdw tests
    
    cac169d68 adjusted DEFAULT_FDW_TUPLE_COST and that seems to have caused
    a test to become unstable on 32-bit machines.  Try to make it stable
    again.
    
    Reported-by: Michael Paquier
    Discussion: https://postgr.es/m/ZUM2IhA8X2lrG50K@paquier.xyz


contrib/postgres_fdw/expected/postgres_fdw.out | 2 ++ contrib/postgres_fdw/sql/postgres_fdw.sql | 2 ++ 2 files changed, 4 insertions(+) diff --git a/contrib/postgres_fdw/expected/postgres_fdw.out b/contrib/postgres_fdw/expected/postgres_fdw.out index e689394807b..b5f65e8ac4f 100644 --- a/contrib/postgres_fdw/expected/postgres_fdw.out +++ b/contrib/postgres_fdw/expected/postgres_fdw.out @@ -4018,6 +4018,7 @@ EXECUTE st1(101, 101); 00101 | 00101 (1 row) +SET enable_hashjoin TO off; -- subquery using stable function (can't be sent to remote) PREPARE st2(int) AS SELECT * FROM ft1 t1 WHERE t1.c1 < $2 AND t1.c3 IN (SELECT c3 FROM ft2 t2 WHERE c1 > $1 AND date(c4) = '1970-01-17'::date) ORDER BY c1; EXPLAIN (VERBOSE, COSTS OFF) EXECUTE st2(10, 20); @@ -4052,6 +4053,7 @@ EXECUTE st2(101, 121); 116 | 6 | 00116 | Sat Jan 17 00:00:00 1970 PST | Sat Jan 17 00:00:00 1970 | 6 | 6 | foo (1 row) +RESET enable_hashjoin; -- subquery using immutable function (can be sent to remote) PREPARE st3(int) AS SELECT * FROM ft1 t1 WHERE t1.c1 < $2 AND t1.c3 IN (SELECT c3 FROM ft2 t2 WHERE c1 > $1 AND date(c5) = '1970-01-17'::date) ORDER BY c1; EXPLAIN (VERBOSE, COSTS OFF) EXECUTE st3(10, 20); diff --git a/contrib/postgres_fdw/sql/postgres_fdw.sql b/contrib/postgres_fdw/sql/postgres_fdw.sql index a303bfb322d..bdcd3824341 100644 --- a/contrib/postgres_fdw/sql/postgres_fdw.sql +++ b/contrib/postgres_fdw/sql/postgres_fdw.sql @@ -1122,11 +1122,13 @@ PREPARE st1(int, int) AS SELECT t1.c3, t2.c3 FROM ft1 t1, ft2 t2 WHERE t1.c1 = $ EXPLAIN (VERBOSE, COSTS OFF) EXECUTE st1(1, 2); EXECUTE st1(1, 1); EXECUTE st1(101, 101); +SET enable_hashjoin TO off; -- subquery using stable function (can't be sent to remote) PREPARE st2(int) AS SELECT * FROM ft1 t1 WHERE t1.c1 < $2 AND t1.c3 IN (SELECT c3 FROM ft2 t2 WHERE c1 > $1 AND date(c4) = '1970-01-17'::date) ORDER BY c1; EXPLAIN (VERBOSE, COSTS OFF) EXECUTE st2(10, 20); EXECUTE st2(10, 20); EXECUTE st2(101, 121); +RESET enable_hashjoin; -- subquery using immutable function (can be sent to remote) PREPARE st3(int) AS SELECT * FROM ft1 t1 WHERE t1.c1 < $2 AND t1.c3 IN (SELECT c3 FROM ft2 t2 WHERE c1 > $1 AND date(c5) = '1970-01-17'::date) ORDER BY c1; EXPLAIN (VERBOSE, COSTS OFF) EXECUTE st3(10, 20); [parent: a02b37fc0832]