- Fix a DST problem in the test suite: postgresql-timetz.patch
https://postgr.es/m/16689-57701daa23b377bf@postgresql.org OBS-URL: https://build.opensuse.org/package/show/server:database:postgresql/postgresql13?expand=0&rev=3
This commit is contained in:
parent
a5916e462a
commit
ddf7e05633
109
postgresql-timetz.patch
Normal file
109
postgresql-timetz.patch
Normal file
@ -0,0 +1,109 @@
|
||||
From: Tom Lane <tgl@sss.pgh.pa.us>
|
||||
Date: Thu, 29 Oct 2020 19:28:14 +0000 (-0400)
|
||||
Subject: Stabilize timetz test across DST transitions.
|
||||
X-Git-Url: http://git.postgresql.org/gitweb/?p=postgresql.git;a=commitdiff_plain;h=4a071afbd056282746a5bc9362e87f579a56402d;hp=f90149e6285aaae6b48559afce1bd638ee26c33e
|
||||
|
||||
Stabilize timetz test across DST transitions.
|
||||
|
||||
The timetz test cases I added in commit a9632830b were unintentionally
|
||||
sensitive to whether or not DST is active in the PST8PDT time zone.
|
||||
Thus, they'll start failing this coming weekend, as reported by
|
||||
Bernhard M. Wiedemann in bug #16689. Fortunately, DST-awareness is
|
||||
not significant to the purpose of these test cases, so we can just
|
||||
force them all to PDT (DST hours) to preserve stability of the
|
||||
results.
|
||||
|
||||
Back-patch to v10, as the prior patch was.
|
||||
|
||||
Discussion: https://postgr.es/m/16689-57701daa23b377bf@postgresql.org
|
||||
---
|
||||
|
||||
--- src/test/regress/expected/timetz.out.orig
|
||||
+++ src/test/regress/expected/timetz.out
|
||||
@@ -91,45 +91,45 @@ SELECT f1 AS "Ten" FROM TIMETZ_TBL WHERE
|
||||
(12 rows)
|
||||
|
||||
-- Check edge cases
|
||||
-SELECT '23:59:59.999999'::timetz;
|
||||
+SELECT '23:59:59.999999 PDT'::timetz;
|
||||
timetz
|
||||
--------------------
|
||||
23:59:59.999999-07
|
||||
(1 row)
|
||||
|
||||
-SELECT '23:59:59.9999999'::timetz; -- rounds up
|
||||
+SELECT '23:59:59.9999999 PDT'::timetz; -- rounds up
|
||||
timetz
|
||||
-------------
|
||||
24:00:00-07
|
||||
(1 row)
|
||||
|
||||
-SELECT '23:59:60'::timetz; -- rounds up
|
||||
+SELECT '23:59:60 PDT'::timetz; -- rounds up
|
||||
timetz
|
||||
-------------
|
||||
24:00:00-07
|
||||
(1 row)
|
||||
|
||||
-SELECT '24:00:00'::timetz; -- allowed
|
||||
+SELECT '24:00:00 PDT'::timetz; -- allowed
|
||||
timetz
|
||||
-------------
|
||||
24:00:00-07
|
||||
(1 row)
|
||||
|
||||
-SELECT '24:00:00.01'::timetz; -- not allowed
|
||||
-ERROR: date/time field value out of range: "24:00:00.01"
|
||||
-LINE 1: SELECT '24:00:00.01'::timetz;
|
||||
+SELECT '24:00:00.01 PDT'::timetz; -- not allowed
|
||||
+ERROR: date/time field value out of range: "24:00:00.01 PDT"
|
||||
+LINE 1: SELECT '24:00:00.01 PDT'::timetz;
|
||||
^
|
||||
-SELECT '23:59:60.01'::timetz; -- not allowed
|
||||
-ERROR: date/time field value out of range: "23:59:60.01"
|
||||
-LINE 1: SELECT '23:59:60.01'::timetz;
|
||||
+SELECT '23:59:60.01 PDT'::timetz; -- not allowed
|
||||
+ERROR: date/time field value out of range: "23:59:60.01 PDT"
|
||||
+LINE 1: SELECT '23:59:60.01 PDT'::timetz;
|
||||
^
|
||||
-SELECT '24:01:00'::timetz; -- not allowed
|
||||
-ERROR: date/time field value out of range: "24:01:00"
|
||||
-LINE 1: SELECT '24:01:00'::timetz;
|
||||
+SELECT '24:01:00 PDT'::timetz; -- not allowed
|
||||
+ERROR: date/time field value out of range: "24:01:00 PDT"
|
||||
+LINE 1: SELECT '24:01:00 PDT'::timetz;
|
||||
^
|
||||
-SELECT '25:00:00'::timetz; -- not allowed
|
||||
-ERROR: date/time field value out of range: "25:00:00"
|
||||
-LINE 1: SELECT '25:00:00'::timetz;
|
||||
+SELECT '25:00:00 PDT'::timetz; -- not allowed
|
||||
+ERROR: date/time field value out of range: "25:00:00 PDT"
|
||||
+LINE 1: SELECT '25:00:00 PDT'::timetz;
|
||||
^
|
||||
--
|
||||
-- TIME simple math
|
||||
--- src/test/regress/sql/timetz.sql.orig
|
||||
+++ src/test/regress/sql/timetz.sql
|
||||
@@ -36,14 +36,14 @@ SELECT f1 AS "None" FROM TIMETZ_TBL WHER
|
||||
SELECT f1 AS "Ten" FROM TIMETZ_TBL WHERE f1 >= '00:00-07';
|
||||
|
||||
-- Check edge cases
|
||||
-SELECT '23:59:59.999999'::timetz;
|
||||
-SELECT '23:59:59.9999999'::timetz; -- rounds up
|
||||
-SELECT '23:59:60'::timetz; -- rounds up
|
||||
-SELECT '24:00:00'::timetz; -- allowed
|
||||
-SELECT '24:00:00.01'::timetz; -- not allowed
|
||||
-SELECT '23:59:60.01'::timetz; -- not allowed
|
||||
-SELECT '24:01:00'::timetz; -- not allowed
|
||||
-SELECT '25:00:00'::timetz; -- not allowed
|
||||
+SELECT '23:59:59.999999 PDT'::timetz;
|
||||
+SELECT '23:59:59.9999999 PDT'::timetz; -- rounds up
|
||||
+SELECT '23:59:60 PDT'::timetz; -- rounds up
|
||||
+SELECT '24:00:00 PDT'::timetz; -- allowed
|
||||
+SELECT '24:00:00.01 PDT'::timetz; -- not allowed
|
||||
+SELECT '23:59:60.01 PDT'::timetz; -- not allowed
|
||||
+SELECT '24:01:00 PDT'::timetz; -- not allowed
|
||||
+SELECT '25:00:00 PDT'::timetz; -- not allowed
|
||||
|
||||
--
|
||||
-- TIME simple math
|
@ -1,3 +1,9 @@
|
||||
-------------------------------------------------------------------
|
||||
Tue Nov 3 13:54:38 UTC 2020 - Reinhard Max <max@suse.com>
|
||||
|
||||
- Fix a DST problem in the test suite: postgresql-timetz.patch
|
||||
https://postgr.es/m/16689-57701daa23b377bf@postgresql.org
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Sep 25 06:57:55 UTC 2020 - Reinhard Max <max@suse.com>
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
#
|
||||
# spec file for package postgresql12
|
||||
# spec file for package postgresql13
|
||||
#
|
||||
# Copyright (c) 2020 SUSE LLC
|
||||
#
|
||||
@ -141,6 +141,7 @@ Patch4: postgresql-plperl-keep-rpath.patch
|
||||
Patch6: postgresql-testsuite-int8.sql.patch
|
||||
Patch8: postgresql-testsuite-keep-results-file.patch
|
||||
Patch9: postgresql-var-run-socket.patch
|
||||
Patch10: postgresql-timetz.patch
|
||||
URL: https://www.postgresql.org/
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
Provides: postgresql = %version-%release
|
||||
@ -448,6 +449,7 @@ touch -r configure tmp
|
||||
%patch6
|
||||
%patch8 -p1
|
||||
%patch9
|
||||
%patch10
|
||||
touch -r tmp configure
|
||||
rm tmp
|
||||
find src/test/ -name '*.orig' -delete
|
||||
|
Loading…
Reference in New Issue
Block a user