Accepting request 845766 from server:database:postgresql

- 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/request/show/845766
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/postgresql12?expand=0&rev=8
This commit is contained in:
Dominique Leuenberger 2020-11-03 14:59:39 +00:00 committed by Git OBS Bridge
commit bc56a98092
3 changed files with 117 additions and 0 deletions

109
postgresql-timetz.patch Normal file
View 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

View File

@ -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 07:34:28 UTC 2020 - Reinhard Max <max@suse.com>

View File

@ -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