aboutsummaryrefslogtreecommitdiff
path: root/src/test/modules/commit_ts/expected/commit_timestamp_1.out
diff options
context:
space:
mode:
authorMichael Paquier <michael@paquier.xyz>2020-07-13 10:54:26 +0900
committerMichael Paquier <michael@paquier.xyz>2020-07-13 10:54:26 +0900
commit5bfe6a3c485d3259f59fa2d2e1d34dea1a3baeba (patch)
tree8a8b23b48b9e38572552088f22436d7c29380a1c /src/test/modules/commit_ts/expected/commit_timestamp_1.out
parentea3e15d1691ec4cadc67f160cc91c7f237a705ae (diff)
downloadpostgresql-5bfe6a3c485d3259f59fa2d2e1d34dea1a3baeba.tar.gz
postgresql-5bfe6a3c485d3259f59fa2d2e1d34dea1a3baeba.zip
Fix timestamp range handling in regression tests of modules/commit_ts/
Switching the regression tests to use tstzrange() has proved to not be a good idea for environments where the timestamp precision is low, as internal range checks exclude the upper bound. So, if the commit timestamp of a transaction matched with now() from the next query, the test would fail. This changes to use two bound checks instead of the range function, where the upper bound is inclusive. Per buildfarm member jacana. Discussion: https://postgr.es/m/20200712122507.GD21680@paquier.xyz
Diffstat (limited to 'src/test/modules/commit_ts/expected/commit_timestamp_1.out')
-rw-r--r--src/test/modules/commit_ts/expected/commit_timestamp_1.out19
1 files changed, 13 insertions, 6 deletions
diff --git a/src/test/modules/commit_ts/expected/commit_timestamp_1.out b/src/test/modules/commit_ts/expected/commit_timestamp_1.out
index 9a748740813..f37e701f37a 100644
--- a/src/test/modules/commit_ts/expected/commit_timestamp_1.out
+++ b/src/test/modules/commit_ts/expected/commit_timestamp_1.out
@@ -35,8 +35,9 @@ SELECT pg_xact_commit_timestamp('2'::xid);
(1 row)
SELECT x.xid::text::bigint > 0 as xid_valid,
- x.timestamp <@ tstzrange('-infinity'::timestamptz, now()) AS ts_in_range,
- roident != 0 AS valid_roident
+ x.timestamp > '-infinity'::timestamptz AS ts_low,
+ x.timestamp <= now() AS ts_high,
+ roident != 0 AS valid_roident
FROM pg_last_committed_xact() x;
ERROR: could not get commit timestamp data
HINT: Make sure the configuration parameter "track_commit_timestamp" is set.
@@ -63,12 +64,14 @@ SELECT * FROM pg_xact_commit_timestamp_origin('2'::xid); -- ok, NULL
-- Test transaction without replication origin
SELECT txid_current() as txid_no_origin \gset
-SELECT x.timestamp <@ tstzrange('-infinity'::timestamptz, now()) AS ts_in_range,
+SELECT x.timestamp > '-infinity'::timestamptz AS ts_low,
+ x.timestamp <= now() AS ts_high,
roident != 0 AS valid_roident
FROM pg_last_committed_xact() x;
ERROR: could not get commit timestamp data
HINT: Make sure the configuration parameter "track_commit_timestamp" is set.
-SELECT x.timestamp <@ tstzrange('-infinity'::timestamptz, now()) AS ts_in_range,
+SELECT x.timestamp > '-infinity'::timestamptz AS ts_low,
+ x.timestamp <= now() AS ts_high,
roident != 0 AS valid_roident
FROM pg_xact_commit_timestamp_origin(:'txid_no_origin') x;
ERROR: could not get commit timestamp data
@@ -88,12 +91,16 @@ SELECT pg_replication_origin_session_setup('regress_commit_ts: get_origin');
(1 row)
SELECT txid_current() as txid_with_origin \gset
-SELECT x.timestamp <@ tstzrange('-infinity'::timestamptz, now()) AS ts_in_range, r.roname
+SELECT x.timestamp > '-infinity'::timestamptz AS ts_low,
+ x.timestamp <= now() AS ts_high,
+ r.roname
FROM pg_last_committed_xact() x, pg_replication_origin r
WHERE r.roident = x.roident;
ERROR: could not get commit timestamp data
HINT: Make sure the configuration parameter "track_commit_timestamp" is set.
-SELECT x.timestamp <@ tstzrange('-infinity'::timestamptz, now()) AS ts_in_range, r.roname
+SELECT x.timestamp > '-infinity'::timestamptz AS ts_low,
+ x.timestamp <= now() AS ts_high,
+ r.roname
FROM pg_xact_commit_timestamp_origin(:'txid_with_origin') x, pg_replication_origin r
WHERE r.roident = x.roident;
ERROR: could not get commit timestamp data