tests: fix testsuites for tzdata2017a
Version: 9.6.2-1
This commit is contained in:
parent
86f7229682
commit
0c1f8cf381
751
postgresql-timezonetz-2017-tests.patch
Normal file
751
postgresql-timezonetz-2017-tests.patch
Normal file
@ -0,0 +1,751 @@
|
||||
From d8ec6b9c8c265c2f29b1c0e0e4205895baaa326d Mon Sep 17 00:00:00 2001
|
||||
From: Tom Lane <tgl@sss.pgh.pa.us>
|
||||
Date: Thu, 9 Mar 2017 17:20:11 -0500
|
||||
Subject: [PATCH] Fix timestamptz regression test to still work with latest
|
||||
IANA zone data.
|
||||
|
||||
The IANA timezone crew continues to chip away at their project of removing
|
||||
timezone abbreviations that have no real-world currency from their
|
||||
database. The tzdata2017a update removes all such abbreviations for
|
||||
South American zones, as well as much of the Pacific. This breaks some
|
||||
test cases in timestamptz.sql that were expecting America/Santiago and
|
||||
America/Caracas to have non-numeric abbreviations.
|
||||
|
||||
The test cases involving America/Santiago seem to have selected that
|
||||
zone more or less at random, so just replace it with America/New_York,
|
||||
which is of similar longitude. The cases involving America/Caracas are
|
||||
harder since they were chosen to test a time-varying zone abbreviation
|
||||
around a point where it changed meaning in the backwards direction.
|
||||
Fortunately, Europe/Moscow has a similar case in 2014, and the MSK/MSD
|
||||
abbreviations are well enough attested that IANA seems unlikely to
|
||||
decide to remove them from the database in future.
|
||||
|
||||
With these changes, this regression test should pass when using any IANA
|
||||
zone database from 2015 or later. One could wish that there were a few
|
||||
years more daylight on how out-of-date your zone database can be ... but
|
||||
really the --with-system-tzdata option is only meant for use on platforms
|
||||
where the zone database is kept up-to-date pretty faithfully, so I do not
|
||||
think this is a big objection.
|
||||
|
||||
Discussion: https://postgr.es/m/6749.1489087470@sss.pgh.pa.us
|
||||
---
|
||||
src/test/regress/expected/timestamptz.out | 324 ++++++++++--------------------
|
||||
src/test/regress/sql/timestamptz.sql | 103 ++++------
|
||||
2 files changed, 148 insertions(+), 279 deletions(-)
|
||||
|
||||
diff --git a/src/test/regress/expected/timestamptz.out b/src/test/regress/expected/timestamptz.out
|
||||
index 51d4d21..3319247 100644
|
||||
--- a/src/test/regress/expected/timestamptz.out
|
||||
+++ b/src/test/regress/expected/timestamptz.out
|
||||
@@ -1773,24 +1773,24 @@ SELECT * FROM TIMESTAMPTZ_TST ORDER BY a;
|
||||
--Cleanup
|
||||
DROP TABLE TIMESTAMPTZ_TST;
|
||||
-- test timestamptz constructors
|
||||
-set TimeZone to 'America/Santiago';
|
||||
+set TimeZone to 'America/New_York';
|
||||
-- numeric timezone
|
||||
SELECT make_timestamptz(1973, 07, 15, 08, 15, 55.33);
|
||||
make_timestamptz
|
||||
---------------------------------
|
||||
- Sun Jul 15 08:15:55.33 1973 CLT
|
||||
+ Sun Jul 15 08:15:55.33 1973 EDT
|
||||
(1 row)
|
||||
|
||||
SELECT make_timestamptz(1973, 07, 15, 08, 15, 55.33, '+2');
|
||||
make_timestamptz
|
||||
---------------------------------
|
||||
- Sun Jul 15 02:15:55.33 1973 CLT
|
||||
+ Sun Jul 15 02:15:55.33 1973 EDT
|
||||
(1 row)
|
||||
|
||||
SELECT make_timestamptz(1973, 07, 15, 08, 15, 55.33, '-2');
|
||||
make_timestamptz
|
||||
---------------------------------
|
||||
- Sun Jul 15 06:15:55.33 1973 CLT
|
||||
+ Sun Jul 15 06:15:55.33 1973 EDT
|
||||
(1 row)
|
||||
|
||||
WITH tzs (tz) AS (VALUES
|
||||
@@ -1799,23 +1799,23 @@ WITH tzs (tz) AS (VALUES
|
||||
('+10:00:1'), ('+10:00:01'),
|
||||
('+10:00:10'))
|
||||
SELECT make_timestamptz(2010, 2, 27, 3, 45, 00, tz), tz FROM tzs;
|
||||
- make_timestamptz | tz
|
||||
--------------------------------+-----------
|
||||
- Fri Feb 26 23:45:00 2010 CLST | +1
|
||||
- Fri Feb 26 23:45:00 2010 CLST | +1:
|
||||
- Fri Feb 26 23:45:00 2010 CLST | +1:0
|
||||
- Fri Feb 26 23:45:00 2010 CLST | +100
|
||||
- Fri Feb 26 23:45:00 2010 CLST | +1:00
|
||||
- Fri Feb 26 23:45:00 2010 CLST | +01:00
|
||||
- Fri Feb 26 14:45:00 2010 CLST | +10
|
||||
- Fri Feb 26 14:45:00 2010 CLST | +1000
|
||||
- Fri Feb 26 14:45:00 2010 CLST | +10:
|
||||
- Fri Feb 26 14:45:00 2010 CLST | +10:0
|
||||
- Fri Feb 26 14:45:00 2010 CLST | +10:00
|
||||
- Fri Feb 26 14:45:00 2010 CLST | +10:00:
|
||||
- Fri Feb 26 14:44:59 2010 CLST | +10:00:1
|
||||
- Fri Feb 26 14:44:59 2010 CLST | +10:00:01
|
||||
- Fri Feb 26 14:44:50 2010 CLST | +10:00:10
|
||||
+ make_timestamptz | tz
|
||||
+------------------------------+-----------
|
||||
+ Fri Feb 26 21:45:00 2010 EST | +1
|
||||
+ Fri Feb 26 21:45:00 2010 EST | +1:
|
||||
+ Fri Feb 26 21:45:00 2010 EST | +1:0
|
||||
+ Fri Feb 26 21:45:00 2010 EST | +100
|
||||
+ Fri Feb 26 21:45:00 2010 EST | +1:00
|
||||
+ Fri Feb 26 21:45:00 2010 EST | +01:00
|
||||
+ Fri Feb 26 12:45:00 2010 EST | +10
|
||||
+ Fri Feb 26 12:45:00 2010 EST | +1000
|
||||
+ Fri Feb 26 12:45:00 2010 EST | +10:
|
||||
+ Fri Feb 26 12:45:00 2010 EST | +10:0
|
||||
+ Fri Feb 26 12:45:00 2010 EST | +10:00
|
||||
+ Fri Feb 26 12:45:00 2010 EST | +10:00:
|
||||
+ Fri Feb 26 12:44:59 2010 EST | +10:00:1
|
||||
+ Fri Feb 26 12:44:59 2010 EST | +10:00:01
|
||||
+ Fri Feb 26 12:44:50 2010 EST | +10:00:10
|
||||
(15 rows)
|
||||
|
||||
-- these should fail
|
||||
@@ -1861,30 +1861,29 @@ SELECT make_timestamptz(1881, 12, 10, 0, 0, 0, 'Europe/Paris') AT TIME ZONE 'UTC
|
||||
SELECT make_timestamptz(1910, 12, 24, 0, 0, 0, 'Nehwon/Lankhmar');
|
||||
ERROR: time zone "Nehwon/Lankhmar" not recognized
|
||||
-- abbreviations
|
||||
-SELECT make_timestamptz(2008, 12, 10, 10, 10, 10, 'CLST');
|
||||
- make_timestamptz
|
||||
--------------------------------
|
||||
- Wed Dec 10 10:10:10 2008 CLST
|
||||
+SELECT make_timestamptz(2008, 12, 10, 10, 10, 10, 'EST');
|
||||
+ make_timestamptz
|
||||
+------------------------------
|
||||
+ Wed Dec 10 10:10:10 2008 EST
|
||||
(1 row)
|
||||
|
||||
-SELECT make_timestamptz(2008, 12, 10, 10, 10, 10, 'CLT');
|
||||
- make_timestamptz
|
||||
--------------------------------
|
||||
- Wed Dec 10 11:10:10 2008 CLST
|
||||
+SELECT make_timestamptz(2008, 12, 10, 10, 10, 10, 'EDT');
|
||||
+ make_timestamptz
|
||||
+------------------------------
|
||||
+ Wed Dec 10 09:10:10 2008 EST
|
||||
(1 row)
|
||||
|
||||
SELECT make_timestamptz(2014, 12, 10, 10, 10, 10, 'PST8PDT');
|
||||
- make_timestamptz
|
||||
--------------------------------
|
||||
- Wed Dec 10 15:10:10 2014 CLST
|
||||
+ make_timestamptz
|
||||
+------------------------------
|
||||
+ Wed Dec 10 13:10:10 2014 EST
|
||||
(1 row)
|
||||
|
||||
RESET TimeZone;
|
||||
--
|
||||
-- Test behavior with a dynamic (time-varying) timezone abbreviation.
|
||||
-- These tests rely on the knowledge that MSK (Europe/Moscow standard time)
|
||||
--- moved forwards in Mar 2011 and that VET (America/Caracas standard time)
|
||||
--- moved backwards in Dec 2007.
|
||||
+-- moved forwards in Mar 2011 and backwards again in Oct 2014.
|
||||
--
|
||||
SET TimeZone to 'UTC';
|
||||
SELECT '2011-03-27 00:00:00 Europe/Moscow'::timestamptz;
|
||||
@@ -1995,100 +1994,64 @@ SELECT '2011-03-27 04:00:00 MSK'::timestamptz;
|
||||
Sun Mar 27 00:00:00 2011 UTC
|
||||
(1 row)
|
||||
|
||||
-SELECT '2007-12-09 02:00:00 America/Caracas'::timestamptz;
|
||||
+SELECT '2014-10-26 00:00:00 Europe/Moscow'::timestamptz;
|
||||
timestamptz
|
||||
------------------------------
|
||||
- Sun Dec 09 06:00:00 2007 UTC
|
||||
+ Sat Oct 25 20:00:00 2014 UTC
|
||||
(1 row)
|
||||
|
||||
-SELECT '2007-12-09 02:29:59 America/Caracas'::timestamptz;
|
||||
+SELECT '2014-10-26 00:59:59 Europe/Moscow'::timestamptz;
|
||||
timestamptz
|
||||
------------------------------
|
||||
- Sun Dec 09 06:29:59 2007 UTC
|
||||
+ Sat Oct 25 20:59:59 2014 UTC
|
||||
(1 row)
|
||||
|
||||
-SELECT '2007-12-09 02:30:00 America/Caracas'::timestamptz;
|
||||
+SELECT '2014-10-26 01:00:00 Europe/Moscow'::timestamptz;
|
||||
timestamptz
|
||||
------------------------------
|
||||
- Sun Dec 09 07:00:00 2007 UTC
|
||||
+ Sat Oct 25 22:00:00 2014 UTC
|
||||
(1 row)
|
||||
|
||||
-SELECT '2007-12-09 02:30:01 America/Caracas'::timestamptz;
|
||||
+SELECT '2014-10-26 01:00:01 Europe/Moscow'::timestamptz;
|
||||
timestamptz
|
||||
------------------------------
|
||||
- Sun Dec 09 07:00:01 2007 UTC
|
||||
+ Sat Oct 25 22:00:01 2014 UTC
|
||||
(1 row)
|
||||
|
||||
-SELECT '2007-12-09 02:59:59 America/Caracas'::timestamptz;
|
||||
+SELECT '2014-10-26 02:00:00 Europe/Moscow'::timestamptz;
|
||||
timestamptz
|
||||
------------------------------
|
||||
- Sun Dec 09 07:29:59 2007 UTC
|
||||
+ Sat Oct 25 23:00:00 2014 UTC
|
||||
(1 row)
|
||||
|
||||
-SELECT '2007-12-09 03:00:00 America/Caracas'::timestamptz;
|
||||
+SELECT '2014-10-26 00:00:00 MSK'::timestamptz;
|
||||
timestamptz
|
||||
------------------------------
|
||||
- Sun Dec 09 07:30:00 2007 UTC
|
||||
+ Sat Oct 25 20:00:00 2014 UTC
|
||||
(1 row)
|
||||
|
||||
-SELECT '2007-12-09 03:00:01 America/Caracas'::timestamptz;
|
||||
+SELECT '2014-10-26 00:59:59 MSK'::timestamptz;
|
||||
timestamptz
|
||||
------------------------------
|
||||
- Sun Dec 09 07:30:01 2007 UTC
|
||||
+ Sat Oct 25 20:59:59 2014 UTC
|
||||
(1 row)
|
||||
|
||||
-SELECT '2007-12-09 04:00:00 America/Caracas'::timestamptz;
|
||||
+SELECT '2014-10-26 01:00:00 MSK'::timestamptz;
|
||||
timestamptz
|
||||
------------------------------
|
||||
- Sun Dec 09 08:30:00 2007 UTC
|
||||
+ Sat Oct 25 22:00:00 2014 UTC
|
||||
(1 row)
|
||||
|
||||
-SELECT '2007-12-09 02:00:00 VET'::timestamptz;
|
||||
+SELECT '2014-10-26 01:00:01 MSK'::timestamptz;
|
||||
timestamptz
|
||||
------------------------------
|
||||
- Sun Dec 09 06:00:00 2007 UTC
|
||||
+ Sat Oct 25 22:00:01 2014 UTC
|
||||
(1 row)
|
||||
|
||||
-SELECT '2007-12-09 02:29:59 VET'::timestamptz;
|
||||
+SELECT '2014-10-26 02:00:00 MSK'::timestamptz;
|
||||
timestamptz
|
||||
------------------------------
|
||||
- Sun Dec 09 06:29:59 2007 UTC
|
||||
-(1 row)
|
||||
-
|
||||
-SELECT '2007-12-09 02:30:00 VET'::timestamptz;
|
||||
- timestamptz
|
||||
-------------------------------
|
||||
- Sun Dec 09 07:00:00 2007 UTC
|
||||
-(1 row)
|
||||
-
|
||||
-SELECT '2007-12-09 02:30:01 VET'::timestamptz;
|
||||
- timestamptz
|
||||
-------------------------------
|
||||
- Sun Dec 09 07:00:01 2007 UTC
|
||||
-(1 row)
|
||||
-
|
||||
-SELECT '2007-12-09 02:59:59 VET'::timestamptz;
|
||||
- timestamptz
|
||||
-------------------------------
|
||||
- Sun Dec 09 07:29:59 2007 UTC
|
||||
-(1 row)
|
||||
-
|
||||
-SELECT '2007-12-09 03:00:00 VET'::timestamptz;
|
||||
- timestamptz
|
||||
-------------------------------
|
||||
- Sun Dec 09 07:30:00 2007 UTC
|
||||
-(1 row)
|
||||
-
|
||||
-SELECT '2007-12-09 03:00:01 VET'::timestamptz;
|
||||
- timestamptz
|
||||
-------------------------------
|
||||
- Sun Dec 09 07:30:01 2007 UTC
|
||||
-(1 row)
|
||||
-
|
||||
-SELECT '2007-12-09 04:00:00 VET'::timestamptz;
|
||||
- timestamptz
|
||||
-------------------------------
|
||||
- Sun Dec 09 08:30:00 2007 UTC
|
||||
+ Sat Oct 25 23:00:00 2014 UTC
|
||||
(1 row)
|
||||
|
||||
SELECT '2011-03-27 00:00:00'::timestamp AT TIME ZONE 'Europe/Moscow';
|
||||
@@ -2199,112 +2162,76 @@ SELECT '2011-03-27 04:00:00'::timestamp AT TIME ZONE 'MSK';
|
||||
Sun Mar 27 00:00:00 2011 UTC
|
||||
(1 row)
|
||||
|
||||
-SELECT '2007-12-09 02:00:00'::timestamp AT TIME ZONE 'America/Caracas';
|
||||
+SELECT '2014-10-26 00:00:00'::timestamp AT TIME ZONE 'Europe/Moscow';
|
||||
timezone
|
||||
------------------------------
|
||||
- Sun Dec 09 06:00:00 2007 UTC
|
||||
+ Sat Oct 25 20:00:00 2014 UTC
|
||||
(1 row)
|
||||
|
||||
-SELECT '2007-12-09 02:29:59'::timestamp AT TIME ZONE 'America/Caracas';
|
||||
+SELECT '2014-10-26 00:59:59'::timestamp AT TIME ZONE 'Europe/Moscow';
|
||||
timezone
|
||||
------------------------------
|
||||
- Sun Dec 09 06:29:59 2007 UTC
|
||||
+ Sat Oct 25 20:59:59 2014 UTC
|
||||
(1 row)
|
||||
|
||||
-SELECT '2007-12-09 02:30:00'::timestamp AT TIME ZONE 'America/Caracas';
|
||||
+SELECT '2014-10-26 01:00:00'::timestamp AT TIME ZONE 'Europe/Moscow';
|
||||
timezone
|
||||
------------------------------
|
||||
- Sun Dec 09 07:00:00 2007 UTC
|
||||
+ Sat Oct 25 22:00:00 2014 UTC
|
||||
(1 row)
|
||||
|
||||
-SELECT '2007-12-09 02:30:01'::timestamp AT TIME ZONE 'America/Caracas';
|
||||
+SELECT '2014-10-26 01:00:01'::timestamp AT TIME ZONE 'Europe/Moscow';
|
||||
timezone
|
||||
------------------------------
|
||||
- Sun Dec 09 07:00:01 2007 UTC
|
||||
+ Sat Oct 25 22:00:01 2014 UTC
|
||||
(1 row)
|
||||
|
||||
-SELECT '2007-12-09 02:59:59'::timestamp AT TIME ZONE 'America/Caracas';
|
||||
+SELECT '2014-10-26 02:00:00'::timestamp AT TIME ZONE 'Europe/Moscow';
|
||||
timezone
|
||||
------------------------------
|
||||
- Sun Dec 09 07:29:59 2007 UTC
|
||||
+ Sat Oct 25 23:00:00 2014 UTC
|
||||
(1 row)
|
||||
|
||||
-SELECT '2007-12-09 03:00:00'::timestamp AT TIME ZONE 'America/Caracas';
|
||||
+SELECT '2014-10-26 00:00:00'::timestamp AT TIME ZONE 'MSK';
|
||||
timezone
|
||||
------------------------------
|
||||
- Sun Dec 09 07:30:00 2007 UTC
|
||||
+ Sat Oct 25 20:00:00 2014 UTC
|
||||
(1 row)
|
||||
|
||||
-SELECT '2007-12-09 03:00:01'::timestamp AT TIME ZONE 'America/Caracas';
|
||||
+SELECT '2014-10-26 00:59:59'::timestamp AT TIME ZONE 'MSK';
|
||||
timezone
|
||||
------------------------------
|
||||
- Sun Dec 09 07:30:01 2007 UTC
|
||||
+ Sat Oct 25 20:59:59 2014 UTC
|
||||
(1 row)
|
||||
|
||||
-SELECT '2007-12-09 04:00:00'::timestamp AT TIME ZONE 'America/Caracas';
|
||||
+SELECT '2014-10-26 01:00:00'::timestamp AT TIME ZONE 'MSK';
|
||||
timezone
|
||||
------------------------------
|
||||
- Sun Dec 09 08:30:00 2007 UTC
|
||||
+ Sat Oct 25 22:00:00 2014 UTC
|
||||
(1 row)
|
||||
|
||||
-SELECT '2007-12-09 02:00:00'::timestamp AT TIME ZONE 'VET';
|
||||
+SELECT '2014-10-26 01:00:01'::timestamp AT TIME ZONE 'MSK';
|
||||
timezone
|
||||
------------------------------
|
||||
- Sun Dec 09 06:00:00 2007 UTC
|
||||
+ Sat Oct 25 22:00:01 2014 UTC
|
||||
(1 row)
|
||||
|
||||
-SELECT '2007-12-09 02:29:59'::timestamp AT TIME ZONE 'VET';
|
||||
+SELECT '2014-10-26 02:00:00'::timestamp AT TIME ZONE 'MSK';
|
||||
timezone
|
||||
------------------------------
|
||||
- Sun Dec 09 06:29:59 2007 UTC
|
||||
+ Sat Oct 25 23:00:00 2014 UTC
|
||||
(1 row)
|
||||
|
||||
-SELECT '2007-12-09 02:30:00'::timestamp AT TIME ZONE 'VET';
|
||||
- timezone
|
||||
-------------------------------
|
||||
- Sun Dec 09 07:00:00 2007 UTC
|
||||
-(1 row)
|
||||
-
|
||||
-SELECT '2007-12-09 02:30:01'::timestamp AT TIME ZONE 'VET';
|
||||
- timezone
|
||||
-------------------------------
|
||||
- Sun Dec 09 07:00:01 2007 UTC
|
||||
-(1 row)
|
||||
-
|
||||
-SELECT '2007-12-09 02:59:59'::timestamp AT TIME ZONE 'VET';
|
||||
- timezone
|
||||
-------------------------------
|
||||
- Sun Dec 09 07:29:59 2007 UTC
|
||||
-(1 row)
|
||||
-
|
||||
-SELECT '2007-12-09 03:00:00'::timestamp AT TIME ZONE 'VET';
|
||||
- timezone
|
||||
-------------------------------
|
||||
- Sun Dec 09 07:30:00 2007 UTC
|
||||
-(1 row)
|
||||
-
|
||||
-SELECT '2007-12-09 03:00:01'::timestamp AT TIME ZONE 'VET';
|
||||
- timezone
|
||||
-------------------------------
|
||||
- Sun Dec 09 07:30:01 2007 UTC
|
||||
-(1 row)
|
||||
-
|
||||
-SELECT '2007-12-09 04:00:00'::timestamp AT TIME ZONE 'VET';
|
||||
- timezone
|
||||
-------------------------------
|
||||
- Sun Dec 09 08:30:00 2007 UTC
|
||||
-(1 row)
|
||||
-
|
||||
-SELECT make_timestamptz(2007, 12, 9, 2, 0, 0, 'VET');
|
||||
+SELECT make_timestamptz(2014, 10, 26, 0, 0, 0, 'MSK');
|
||||
make_timestamptz
|
||||
------------------------------
|
||||
- Sun Dec 09 06:00:00 2007 UTC
|
||||
+ Sat Oct 25 20:00:00 2014 UTC
|
||||
(1 row)
|
||||
|
||||
-SELECT make_timestamptz(2007, 12, 9, 3, 0, 0, 'VET');
|
||||
+SELECT make_timestamptz(2014, 10, 26, 1, 0, 0, 'MSK');
|
||||
make_timestamptz
|
||||
------------------------------
|
||||
- Sun Dec 09 07:30:00 2007 UTC
|
||||
+ Sat Oct 25 22:00:00 2014 UTC
|
||||
(1 row)
|
||||
|
||||
SELECT to_timestamp( 0); -- 1970-01-01 00:00:00+00
|
||||
@@ -2391,47 +2318,34 @@ SELECT '2011-03-27 00:00:00 UTC'::timestamptz;
|
||||
Sun Mar 27 04:00:00 2011 MSK
|
||||
(1 row)
|
||||
|
||||
-SET TimeZone to 'America/Caracas';
|
||||
-SELECT '2007-12-09 06:00:00 UTC'::timestamptz;
|
||||
+SELECT '2014-10-25 21:00:00 UTC'::timestamptz;
|
||||
timestamptz
|
||||
------------------------------
|
||||
- Sun Dec 09 02:00:00 2007 VET
|
||||
+ Sun Oct 26 01:00:00 2014 MSK
|
||||
(1 row)
|
||||
|
||||
-SELECT '2007-12-09 06:30:00 UTC'::timestamptz;
|
||||
+SELECT '2014-10-25 21:59:59 UTC'::timestamptz;
|
||||
timestamptz
|
||||
------------------------------
|
||||
- Sun Dec 09 02:30:00 2007 VET
|
||||
+ Sun Oct 26 01:59:59 2014 MSK
|
||||
(1 row)
|
||||
|
||||
-SELECT '2007-12-09 06:59:59 UTC'::timestamptz;
|
||||
+SELECT '2014-10-25 22:00:00 UTC'::timestamptz;
|
||||
timestamptz
|
||||
------------------------------
|
||||
- Sun Dec 09 02:59:59 2007 VET
|
||||
+ Sun Oct 26 01:00:00 2014 MSK
|
||||
(1 row)
|
||||
|
||||
-SELECT '2007-12-09 07:00:00 UTC'::timestamptz;
|
||||
+SELECT '2014-10-25 22:00:01 UTC'::timestamptz;
|
||||
timestamptz
|
||||
------------------------------
|
||||
- Sun Dec 09 02:30:00 2007 VET
|
||||
+ Sun Oct 26 01:00:01 2014 MSK
|
||||
(1 row)
|
||||
|
||||
-SELECT '2007-12-09 07:00:01 UTC'::timestamptz;
|
||||
+SELECT '2014-10-25 23:00:00 UTC'::timestamptz;
|
||||
timestamptz
|
||||
------------------------------
|
||||
- Sun Dec 09 02:30:01 2007 VET
|
||||
-(1 row)
|
||||
-
|
||||
-SELECT '2007-12-09 07:29:59 UTC'::timestamptz;
|
||||
- timestamptz
|
||||
-------------------------------
|
||||
- Sun Dec 09 02:59:59 2007 VET
|
||||
-(1 row)
|
||||
-
|
||||
-SELECT '2007-12-09 07:30:00 UTC'::timestamptz;
|
||||
- timestamptz
|
||||
-------------------------------
|
||||
- Sun Dec 09 03:00:00 2007 VET
|
||||
+ Sun Oct 26 02:00:00 2014 MSK
|
||||
(1 row)
|
||||
|
||||
RESET TimeZone;
|
||||
@@ -2477,46 +2391,34 @@ SELECT '2011-03-27 00:00:00 UTC'::timestamptz AT TIME ZONE 'Europe/Moscow';
|
||||
Sun Mar 27 04:00:00 2011
|
||||
(1 row)
|
||||
|
||||
-SELECT '2007-12-09 06:00:00 UTC'::timestamptz AT TIME ZONE 'America/Caracas';
|
||||
+SELECT '2014-10-25 21:00:00 UTC'::timestamptz AT TIME ZONE 'Europe/Moscow';
|
||||
timezone
|
||||
--------------------------
|
||||
- Sun Dec 09 02:00:00 2007
|
||||
+ Sun Oct 26 01:00:00 2014
|
||||
(1 row)
|
||||
|
||||
-SELECT '2007-12-09 06:30:00 UTC'::timestamptz AT TIME ZONE 'America/Caracas';
|
||||
+SELECT '2014-10-25 21:59:59 UTC'::timestamptz AT TIME ZONE 'Europe/Moscow';
|
||||
timezone
|
||||
--------------------------
|
||||
- Sun Dec 09 02:30:00 2007
|
||||
+ Sun Oct 26 01:59:59 2014
|
||||
(1 row)
|
||||
|
||||
-SELECT '2007-12-09 06:59:59 UTC'::timestamptz AT TIME ZONE 'America/Caracas';
|
||||
+SELECT '2014-10-25 22:00:00 UTC'::timestamptz AT TIME ZONE 'Europe/Moscow';
|
||||
timezone
|
||||
--------------------------
|
||||
- Sun Dec 09 02:59:59 2007
|
||||
+ Sun Oct 26 01:00:00 2014
|
||||
(1 row)
|
||||
|
||||
-SELECT '2007-12-09 07:00:00 UTC'::timestamptz AT TIME ZONE 'America/Caracas';
|
||||
+SELECT '2014-10-25 22:00:01 UTC'::timestamptz AT TIME ZONE 'Europe/Moscow';
|
||||
timezone
|
||||
--------------------------
|
||||
- Sun Dec 09 02:30:00 2007
|
||||
+ Sun Oct 26 01:00:01 2014
|
||||
(1 row)
|
||||
|
||||
-SELECT '2007-12-09 07:00:01 UTC'::timestamptz AT TIME ZONE 'America/Caracas';
|
||||
+SELECT '2014-10-25 23:00:00 UTC'::timestamptz AT TIME ZONE 'Europe/Moscow';
|
||||
timezone
|
||||
--------------------------
|
||||
- Sun Dec 09 02:30:01 2007
|
||||
-(1 row)
|
||||
-
|
||||
-SELECT '2007-12-09 07:29:59 UTC'::timestamptz AT TIME ZONE 'America/Caracas';
|
||||
- timezone
|
||||
---------------------------
|
||||
- Sun Dec 09 02:59:59 2007
|
||||
-(1 row)
|
||||
-
|
||||
-SELECT '2007-12-09 07:30:00 UTC'::timestamptz AT TIME ZONE 'America/Caracas';
|
||||
- timezone
|
||||
---------------------------
|
||||
- Sun Dec 09 03:00:00 2007
|
||||
+ Sun Oct 26 02:00:00 2014
|
||||
(1 row)
|
||||
|
||||
SELECT '2011-03-26 21:00:00 UTC'::timestamptz AT TIME ZONE 'MSK';
|
||||
@@ -2561,46 +2463,34 @@ SELECT '2011-03-27 00:00:00 UTC'::timestamptz AT TIME ZONE 'MSK';
|
||||
Sun Mar 27 04:00:00 2011
|
||||
(1 row)
|
||||
|
||||
-SELECT '2007-12-09 06:00:00 UTC'::timestamptz AT TIME ZONE 'VET';
|
||||
+SELECT '2014-10-25 21:00:00 UTC'::timestamptz AT TIME ZONE 'MSK';
|
||||
timezone
|
||||
--------------------------
|
||||
- Sun Dec 09 02:00:00 2007
|
||||
+ Sun Oct 26 01:00:00 2014
|
||||
(1 row)
|
||||
|
||||
-SELECT '2007-12-09 06:30:00 UTC'::timestamptz AT TIME ZONE 'VET';
|
||||
+SELECT '2014-10-25 21:59:59 UTC'::timestamptz AT TIME ZONE 'MSK';
|
||||
timezone
|
||||
--------------------------
|
||||
- Sun Dec 09 02:30:00 2007
|
||||
+ Sun Oct 26 01:59:59 2014
|
||||
(1 row)
|
||||
|
||||
-SELECT '2007-12-09 06:59:59 UTC'::timestamptz AT TIME ZONE 'VET';
|
||||
+SELECT '2014-10-25 22:00:00 UTC'::timestamptz AT TIME ZONE 'MSK';
|
||||
timezone
|
||||
--------------------------
|
||||
- Sun Dec 09 02:59:59 2007
|
||||
+ Sun Oct 26 01:00:00 2014
|
||||
(1 row)
|
||||
|
||||
-SELECT '2007-12-09 07:00:00 UTC'::timestamptz AT TIME ZONE 'VET';
|
||||
+SELECT '2014-10-25 22:00:01 UTC'::timestamptz AT TIME ZONE 'MSK';
|
||||
timezone
|
||||
--------------------------
|
||||
- Sun Dec 09 02:30:00 2007
|
||||
+ Sun Oct 26 01:00:01 2014
|
||||
(1 row)
|
||||
|
||||
-SELECT '2007-12-09 07:00:01 UTC'::timestamptz AT TIME ZONE 'VET';
|
||||
+SELECT '2014-10-25 23:00:00 UTC'::timestamptz AT TIME ZONE 'MSK';
|
||||
timezone
|
||||
--------------------------
|
||||
- Sun Dec 09 02:30:01 2007
|
||||
-(1 row)
|
||||
-
|
||||
-SELECT '2007-12-09 07:29:59 UTC'::timestamptz AT TIME ZONE 'VET';
|
||||
- timezone
|
||||
---------------------------
|
||||
- Sun Dec 09 02:59:59 2007
|
||||
-(1 row)
|
||||
-
|
||||
-SELECT '2007-12-09 07:30:00 UTC'::timestamptz AT TIME ZONE 'VET';
|
||||
- timezone
|
||||
---------------------------
|
||||
- Sun Dec 09 03:00:00 2007
|
||||
+ Sun Oct 26 02:00:00 2014
|
||||
(1 row)
|
||||
|
||||
--
|
||||
diff --git a/src/test/regress/sql/timestamptz.sql b/src/test/regress/sql/timestamptz.sql
|
||||
index ab86622..4e37071 100644
|
||||
--- a/src/test/regress/sql/timestamptz.sql
|
||||
+++ b/src/test/regress/sql/timestamptz.sql
|
||||
@@ -280,7 +280,7 @@ SELECT * FROM TIMESTAMPTZ_TST ORDER BY a;
|
||||
DROP TABLE TIMESTAMPTZ_TST;
|
||||
|
||||
-- test timestamptz constructors
|
||||
-set TimeZone to 'America/Santiago';
|
||||
+set TimeZone to 'America/New_York';
|
||||
|
||||
-- numeric timezone
|
||||
SELECT make_timestamptz(1973, 07, 15, 08, 15, 55.33);
|
||||
@@ -309,8 +309,8 @@ SELECT make_timestamptz(1881, 12, 10, 0, 0, 0, 'Europe/Paris') AT TIME ZONE 'UTC
|
||||
SELECT make_timestamptz(1910, 12, 24, 0, 0, 0, 'Nehwon/Lankhmar');
|
||||
|
||||
-- abbreviations
|
||||
-SELECT make_timestamptz(2008, 12, 10, 10, 10, 10, 'CLST');
|
||||
-SELECT make_timestamptz(2008, 12, 10, 10, 10, 10, 'CLT');
|
||||
+SELECT make_timestamptz(2008, 12, 10, 10, 10, 10, 'EST');
|
||||
+SELECT make_timestamptz(2008, 12, 10, 10, 10, 10, 'EDT');
|
||||
SELECT make_timestamptz(2014, 12, 10, 10, 10, 10, 'PST8PDT');
|
||||
|
||||
RESET TimeZone;
|
||||
@@ -318,8 +318,7 @@ RESET TimeZone;
|
||||
--
|
||||
-- Test behavior with a dynamic (time-varying) timezone abbreviation.
|
||||
-- These tests rely on the knowledge that MSK (Europe/Moscow standard time)
|
||||
--- moved forwards in Mar 2011 and that VET (America/Caracas standard time)
|
||||
--- moved backwards in Dec 2007.
|
||||
+-- moved forwards in Mar 2011 and backwards again in Oct 2014.
|
||||
--
|
||||
|
||||
SET TimeZone to 'UTC';
|
||||
@@ -344,23 +343,17 @@ SELECT '2011-03-27 03:00:00 MSK'::timestamptz;
|
||||
SELECT '2011-03-27 03:00:01 MSK'::timestamptz;
|
||||
SELECT '2011-03-27 04:00:00 MSK'::timestamptz;
|
||||
|
||||
-SELECT '2007-12-09 02:00:00 America/Caracas'::timestamptz;
|
||||
-SELECT '2007-12-09 02:29:59 America/Caracas'::timestamptz;
|
||||
-SELECT '2007-12-09 02:30:00 America/Caracas'::timestamptz;
|
||||
-SELECT '2007-12-09 02:30:01 America/Caracas'::timestamptz;
|
||||
-SELECT '2007-12-09 02:59:59 America/Caracas'::timestamptz;
|
||||
-SELECT '2007-12-09 03:00:00 America/Caracas'::timestamptz;
|
||||
-SELECT '2007-12-09 03:00:01 America/Caracas'::timestamptz;
|
||||
-SELECT '2007-12-09 04:00:00 America/Caracas'::timestamptz;
|
||||
+SELECT '2014-10-26 00:00:00 Europe/Moscow'::timestamptz;
|
||||
+SELECT '2014-10-26 00:59:59 Europe/Moscow'::timestamptz;
|
||||
+SELECT '2014-10-26 01:00:00 Europe/Moscow'::timestamptz;
|
||||
+SELECT '2014-10-26 01:00:01 Europe/Moscow'::timestamptz;
|
||||
+SELECT '2014-10-26 02:00:00 Europe/Moscow'::timestamptz;
|
||||
|
||||
-SELECT '2007-12-09 02:00:00 VET'::timestamptz;
|
||||
-SELECT '2007-12-09 02:29:59 VET'::timestamptz;
|
||||
-SELECT '2007-12-09 02:30:00 VET'::timestamptz;
|
||||
-SELECT '2007-12-09 02:30:01 VET'::timestamptz;
|
||||
-SELECT '2007-12-09 02:59:59 VET'::timestamptz;
|
||||
-SELECT '2007-12-09 03:00:00 VET'::timestamptz;
|
||||
-SELECT '2007-12-09 03:00:01 VET'::timestamptz;
|
||||
-SELECT '2007-12-09 04:00:00 VET'::timestamptz;
|
||||
+SELECT '2014-10-26 00:00:00 MSK'::timestamptz;
|
||||
+SELECT '2014-10-26 00:59:59 MSK'::timestamptz;
|
||||
+SELECT '2014-10-26 01:00:00 MSK'::timestamptz;
|
||||
+SELECT '2014-10-26 01:00:01 MSK'::timestamptz;
|
||||
+SELECT '2014-10-26 02:00:00 MSK'::timestamptz;
|
||||
|
||||
SELECT '2011-03-27 00:00:00'::timestamp AT TIME ZONE 'Europe/Moscow';
|
||||
SELECT '2011-03-27 01:00:00'::timestamp AT TIME ZONE 'Europe/Moscow';
|
||||
@@ -382,26 +375,20 @@ SELECT '2011-03-27 03:00:00'::timestamp AT TIME ZONE 'MSK';
|
||||
SELECT '2011-03-27 03:00:01'::timestamp AT TIME ZONE 'MSK';
|
||||
SELECT '2011-03-27 04:00:00'::timestamp AT TIME ZONE 'MSK';
|
||||
|
||||
-SELECT '2007-12-09 02:00:00'::timestamp AT TIME ZONE 'America/Caracas';
|
||||
-SELECT '2007-12-09 02:29:59'::timestamp AT TIME ZONE 'America/Caracas';
|
||||
-SELECT '2007-12-09 02:30:00'::timestamp AT TIME ZONE 'America/Caracas';
|
||||
-SELECT '2007-12-09 02:30:01'::timestamp AT TIME ZONE 'America/Caracas';
|
||||
-SELECT '2007-12-09 02:59:59'::timestamp AT TIME ZONE 'America/Caracas';
|
||||
-SELECT '2007-12-09 03:00:00'::timestamp AT TIME ZONE 'America/Caracas';
|
||||
-SELECT '2007-12-09 03:00:01'::timestamp AT TIME ZONE 'America/Caracas';
|
||||
-SELECT '2007-12-09 04:00:00'::timestamp AT TIME ZONE 'America/Caracas';
|
||||
+SELECT '2014-10-26 00:00:00'::timestamp AT TIME ZONE 'Europe/Moscow';
|
||||
+SELECT '2014-10-26 00:59:59'::timestamp AT TIME ZONE 'Europe/Moscow';
|
||||
+SELECT '2014-10-26 01:00:00'::timestamp AT TIME ZONE 'Europe/Moscow';
|
||||
+SELECT '2014-10-26 01:00:01'::timestamp AT TIME ZONE 'Europe/Moscow';
|
||||
+SELECT '2014-10-26 02:00:00'::timestamp AT TIME ZONE 'Europe/Moscow';
|
||||
|
||||
-SELECT '2007-12-09 02:00:00'::timestamp AT TIME ZONE 'VET';
|
||||
-SELECT '2007-12-09 02:29:59'::timestamp AT TIME ZONE 'VET';
|
||||
-SELECT '2007-12-09 02:30:00'::timestamp AT TIME ZONE 'VET';
|
||||
-SELECT '2007-12-09 02:30:01'::timestamp AT TIME ZONE 'VET';
|
||||
-SELECT '2007-12-09 02:59:59'::timestamp AT TIME ZONE 'VET';
|
||||
-SELECT '2007-12-09 03:00:00'::timestamp AT TIME ZONE 'VET';
|
||||
-SELECT '2007-12-09 03:00:01'::timestamp AT TIME ZONE 'VET';
|
||||
-SELECT '2007-12-09 04:00:00'::timestamp AT TIME ZONE 'VET';
|
||||
+SELECT '2014-10-26 00:00:00'::timestamp AT TIME ZONE 'MSK';
|
||||
+SELECT '2014-10-26 00:59:59'::timestamp AT TIME ZONE 'MSK';
|
||||
+SELECT '2014-10-26 01:00:00'::timestamp AT TIME ZONE 'MSK';
|
||||
+SELECT '2014-10-26 01:00:01'::timestamp AT TIME ZONE 'MSK';
|
||||
+SELECT '2014-10-26 02:00:00'::timestamp AT TIME ZONE 'MSK';
|
||||
|
||||
-SELECT make_timestamptz(2007, 12, 9, 2, 0, 0, 'VET');
|
||||
-SELECT make_timestamptz(2007, 12, 9, 3, 0, 0, 'VET');
|
||||
+SELECT make_timestamptz(2014, 10, 26, 0, 0, 0, 'MSK');
|
||||
+SELECT make_timestamptz(2014, 10, 26, 1, 0, 0, 'MSK');
|
||||
|
||||
SELECT to_timestamp( 0); -- 1970-01-01 00:00:00+00
|
||||
SELECT to_timestamp( 946684800); -- 2000-01-01 00:00:00+00
|
||||
@@ -425,15 +412,11 @@ SELECT '2011-03-26 23:00:01 UTC'::timestamptz;
|
||||
SELECT '2011-03-26 23:59:59 UTC'::timestamptz;
|
||||
SELECT '2011-03-27 00:00:00 UTC'::timestamptz;
|
||||
|
||||
-SET TimeZone to 'America/Caracas';
|
||||
-
|
||||
-SELECT '2007-12-09 06:00:00 UTC'::timestamptz;
|
||||
-SELECT '2007-12-09 06:30:00 UTC'::timestamptz;
|
||||
-SELECT '2007-12-09 06:59:59 UTC'::timestamptz;
|
||||
-SELECT '2007-12-09 07:00:00 UTC'::timestamptz;
|
||||
-SELECT '2007-12-09 07:00:01 UTC'::timestamptz;
|
||||
-SELECT '2007-12-09 07:29:59 UTC'::timestamptz;
|
||||
-SELECT '2007-12-09 07:30:00 UTC'::timestamptz;
|
||||
+SELECT '2014-10-25 21:00:00 UTC'::timestamptz;
|
||||
+SELECT '2014-10-25 21:59:59 UTC'::timestamptz;
|
||||
+SELECT '2014-10-25 22:00:00 UTC'::timestamptz;
|
||||
+SELECT '2014-10-25 22:00:01 UTC'::timestamptz;
|
||||
+SELECT '2014-10-25 23:00:00 UTC'::timestamptz;
|
||||
|
||||
RESET TimeZone;
|
||||
|
||||
@@ -445,13 +428,11 @@ SELECT '2011-03-26 23:00:01 UTC'::timestamptz AT TIME ZONE 'Europe/Moscow';
|
||||
SELECT '2011-03-26 23:59:59 UTC'::timestamptz AT TIME ZONE 'Europe/Moscow';
|
||||
SELECT '2011-03-27 00:00:00 UTC'::timestamptz AT TIME ZONE 'Europe/Moscow';
|
||||
|
||||
-SELECT '2007-12-09 06:00:00 UTC'::timestamptz AT TIME ZONE 'America/Caracas';
|
||||
-SELECT '2007-12-09 06:30:00 UTC'::timestamptz AT TIME ZONE 'America/Caracas';
|
||||
-SELECT '2007-12-09 06:59:59 UTC'::timestamptz AT TIME ZONE 'America/Caracas';
|
||||
-SELECT '2007-12-09 07:00:00 UTC'::timestamptz AT TIME ZONE 'America/Caracas';
|
||||
-SELECT '2007-12-09 07:00:01 UTC'::timestamptz AT TIME ZONE 'America/Caracas';
|
||||
-SELECT '2007-12-09 07:29:59 UTC'::timestamptz AT TIME ZONE 'America/Caracas';
|
||||
-SELECT '2007-12-09 07:30:00 UTC'::timestamptz AT TIME ZONE 'America/Caracas';
|
||||
+SELECT '2014-10-25 21:00:00 UTC'::timestamptz AT TIME ZONE 'Europe/Moscow';
|
||||
+SELECT '2014-10-25 21:59:59 UTC'::timestamptz AT TIME ZONE 'Europe/Moscow';
|
||||
+SELECT '2014-10-25 22:00:00 UTC'::timestamptz AT TIME ZONE 'Europe/Moscow';
|
||||
+SELECT '2014-10-25 22:00:01 UTC'::timestamptz AT TIME ZONE 'Europe/Moscow';
|
||||
+SELECT '2014-10-25 23:00:00 UTC'::timestamptz AT TIME ZONE 'Europe/Moscow';
|
||||
|
||||
SELECT '2011-03-26 21:00:00 UTC'::timestamptz AT TIME ZONE 'MSK';
|
||||
SELECT '2011-03-26 22:00:00 UTC'::timestamptz AT TIME ZONE 'MSK';
|
||||
@@ -461,13 +442,11 @@ SELECT '2011-03-26 23:00:01 UTC'::timestamptz AT TIME ZONE 'MSK';
|
||||
SELECT '2011-03-26 23:59:59 UTC'::timestamptz AT TIME ZONE 'MSK';
|
||||
SELECT '2011-03-27 00:00:00 UTC'::timestamptz AT TIME ZONE 'MSK';
|
||||
|
||||
-SELECT '2007-12-09 06:00:00 UTC'::timestamptz AT TIME ZONE 'VET';
|
||||
-SELECT '2007-12-09 06:30:00 UTC'::timestamptz AT TIME ZONE 'VET';
|
||||
-SELECT '2007-12-09 06:59:59 UTC'::timestamptz AT TIME ZONE 'VET';
|
||||
-SELECT '2007-12-09 07:00:00 UTC'::timestamptz AT TIME ZONE 'VET';
|
||||
-SELECT '2007-12-09 07:00:01 UTC'::timestamptz AT TIME ZONE 'VET';
|
||||
-SELECT '2007-12-09 07:29:59 UTC'::timestamptz AT TIME ZONE 'VET';
|
||||
-SELECT '2007-12-09 07:30:00 UTC'::timestamptz AT TIME ZONE 'VET';
|
||||
+SELECT '2014-10-25 21:00:00 UTC'::timestamptz AT TIME ZONE 'MSK';
|
||||
+SELECT '2014-10-25 21:59:59 UTC'::timestamptz AT TIME ZONE 'MSK';
|
||||
+SELECT '2014-10-25 22:00:00 UTC'::timestamptz AT TIME ZONE 'MSK';
|
||||
+SELECT '2014-10-25 22:00:01 UTC'::timestamptz AT TIME ZONE 'MSK';
|
||||
+SELECT '2014-10-25 23:00:00 UTC'::timestamptz AT TIME ZONE 'MSK';
|
||||
|
||||
--
|
||||
-- Test that the pg_timezone_names and pg_timezone_abbrevs views are
|
||||
--
|
||||
2.9.3
|
||||
|
@ -114,6 +114,7 @@ Patch2: postgresql-logging.patch
|
||||
Patch3: postgresql-perl-rpath.patch
|
||||
Patch5: postgresql-var-run-socket.patch
|
||||
Patch6: postgresql-man.patch
|
||||
Patch7: postgresql-timezonetz-2017-tests.patch
|
||||
|
||||
BuildRequires: perl(ExtUtils::MakeMaker) glibc-devel bison flex gawk help2man
|
||||
BuildRequires: perl(ExtUtils::Embed), perl-devel
|
||||
@ -363,6 +364,7 @@ benchmarks.
|
||||
%patch3 -p1
|
||||
%patch5 -p1
|
||||
%patch6 -p1
|
||||
%patch7 -p1
|
||||
|
||||
# We used to run autoconf here, but there's no longer any real need to,
|
||||
# since Postgres ships with a reasonably modern configure script.
|
||||
|
Loading…
Reference in New Issue
Block a user