aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMichael Paquier <michael@paquier.xyz>2024-12-20 19:00:18 +0900
committerMichael Paquier <michael@paquier.xyz>2024-12-20 19:00:18 +0900
commit546371599e767340599cdff3e276728016e560cc (patch)
tree289103148e2762c206b1b1da27260b020e976303 /src
parent5983a4cffc31640fda6643f10146a5b72b203eaa (diff)
downloadpostgresql-546371599e767340599cdff3e276728016e560cc.tar.gz
postgresql-546371599e767340599cdff3e276728016e560cc.zip
Relax regression test for fsync check of backend-level stats
One test added in 9aea73fc61d4 did not take into account that the backend may have some fsync even after a checkpoint. Let's relax it to be more flexible. Per report from buildfarm member grassquit, via Alexander Lakhin. Author: Bertrand Drouvot Discussion: https://postgr.es/m/6143ab0a-9e88-4790-8d9d-50ba45657761@gmail.com
Diffstat (limited to 'src')
-rw-r--r--src/test/regress/expected/stats.out5
-rw-r--r--src/test/regress/sql/stats.sql5
2 files changed, 4 insertions, 6 deletions
diff --git a/src/test/regress/expected/stats.out b/src/test/regress/expected/stats.out
index 150b6dcf740..a0317b7208e 100644
--- a/src/test/regress/expected/stats.out
+++ b/src/test/regress/expected/stats.out
@@ -1299,7 +1299,7 @@ SELECT :my_io_sum_shared_after_extends > :my_io_sum_shared_before_extends;
(1 row)
-- After a checkpoint, there should be some additional IOCONTEXT_NORMAL writes
--- and fsyncs in the global stats (not for the backend).
+-- and fsyncs in the global stats (usually not for the backend).
-- See comment above for rationale for two explicit CHECKPOINTs.
CHECKPOINT;
CHECKPOINT;
@@ -1329,8 +1329,7 @@ SELECT :my_io_sum_shared_after_writes >= :my_io_sum_shared_before_writes;
(1 row)
SELECT current_setting('fsync') = 'off'
- OR (:my_io_sum_shared_after_fsyncs = :my_io_sum_shared_before_fsyncs
- AND :my_io_sum_shared_after_fsyncs= 0);
+ OR :my_io_sum_shared_after_fsyncs >= :my_io_sum_shared_before_fsyncs;
?column?
----------
t
diff --git a/src/test/regress/sql/stats.sql b/src/test/regress/sql/stats.sql
index 1e7d0ff6653..399c72bbcf7 100644
--- a/src/test/regress/sql/stats.sql
+++ b/src/test/regress/sql/stats.sql
@@ -633,7 +633,7 @@ SELECT sum(extends) AS my_io_sum_shared_after_extends
SELECT :my_io_sum_shared_after_extends > :my_io_sum_shared_before_extends;
-- After a checkpoint, there should be some additional IOCONTEXT_NORMAL writes
--- and fsyncs in the global stats (not for the backend).
+-- and fsyncs in the global stats (usually not for the backend).
-- See comment above for rationale for two explicit CHECKPOINTs.
CHECKPOINT;
CHECKPOINT;
@@ -648,8 +648,7 @@ SELECT sum(writes) AS writes, sum(fsyncs) AS fsyncs
WHERE object = 'relation' \gset my_io_sum_shared_after_
SELECT :my_io_sum_shared_after_writes >= :my_io_sum_shared_before_writes;
SELECT current_setting('fsync') = 'off'
- OR (:my_io_sum_shared_after_fsyncs = :my_io_sum_shared_before_fsyncs
- AND :my_io_sum_shared_after_fsyncs= 0);
+ OR :my_io_sum_shared_after_fsyncs >= :my_io_sum_shared_before_fsyncs;
-- Change the tablespace so that the table is rewritten directly, then SELECT
-- from it to cause it to be read back into shared buffers.