diff options
author | Alvaro Herrera <alvherre@alvh.no-ip.org> | 2024-03-30 14:16:54 +0100 |
---|---|---|
committer | Alvaro Herrera <alvherre@alvh.no-ip.org> | 2024-03-30 14:16:54 +0100 |
commit | ecf741cfae0603d1df269d8b799455bbcaef86e7 (patch) | |
tree | 0bf0d313a8fccb27b353398a2b27ddc2ad10a322 /contrib/postgres_fdw/sql | |
parent | 056c565742742e2eafe681c0a3ee7710503a556b (diff) | |
download | postgresql-ecf741cfae0603d1df269d8b799455bbcaef86e7.tar.gz postgresql-ecf741cfae0603d1df269d8b799455bbcaef86e7.zip |
Stabilize postgres_fdw test
The test fails when RESET statement_timeout takes longer than 10ms.
Avoid the problem by using SET LOCAL instead.
Overall, this test is not ideal: 10ms could be shorter than the time to
have sent the query to the "remote" server, so it's possible that on
some machines this test doesn't actually witness a remote query being
cancelled. We may want to improve on this someday by using some other
testing technique, but for now it's better than nothing. I verified
manually that one round of remote cancellation occurs when this runs on
my machine.
Discussion: https://postgr.es/m/CAGECzQRsdWnj=YaaPCnA8d7E1AdbxRPBYmyBQRMPUijR2MpM_w@mail.gmail.com
Diffstat (limited to 'contrib/postgres_fdw/sql')
-rw-r--r-- | contrib/postgres_fdw/sql/postgres_fdw.sql | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/contrib/postgres_fdw/sql/postgres_fdw.sql b/contrib/postgres_fdw/sql/postgres_fdw.sql index 6e1c819159c..09ba234e43d 100644 --- a/contrib/postgres_fdw/sql/postgres_fdw.sql +++ b/contrib/postgres_fdw/sql/postgres_fdw.sql @@ -740,9 +740,10 @@ ALTER VIEW v4 OWNER TO regress_view_owner; -- Make sure this big CROSS JOIN query is pushed down EXPLAIN (VERBOSE, COSTS OFF) SELECT count(*) FROM ft1 CROSS JOIN ft2 CROSS JOIN ft4 CROSS JOIN ft5; -- Make sure query cancellation works -SET statement_timeout = '10ms'; +BEGIN; +SET LOCAL statement_timeout = '10ms'; select count(*) from ft1 CROSS JOIN ft2 CROSS JOIN ft4 CROSS JOIN ft5; -- this takes very long -RESET statement_timeout; +COMMIT; -- ==================================================================== -- Check that userid to use when querying the remote table is correctly |