Re: 002_types.pl fails on some timezones on windows
От | Andres Freund |
---|---|
Тема | Re: 002_types.pl fails on some timezones on windows |
Дата | |
Msg-id | 20210930203136.q36t6noaub5axbmy@alap3.anarazel.de обсуждение исходный текст |
Ответ на | Re: 002_types.pl fails on some timezones on windows (Tom Lane <tgl@sss.pgh.pa.us>) |
Список | pgsql-hackers |
Hi, On 2021-09-30 16:03:15 -0400, Tom Lane wrote: > I wrote: > > ... sure enough, 002_types.pl > > falls over with TZ=Africa/Casablanca on my Linux machine, too. > > Independently of whether Africa/Casablanca is a sane translation of > that Windows zone name, it'd be nice if 002_types.pl weren't so > sensitive to the prevailing zone. I looked into exactly why it's > falling over, and the answer seems to be this bit: > (2, tstzrange('Mon Aug 04 00:00:00 2014 CEST'::timestamptz - interval '2 days', 'Mon Aug 04 00:00:00 2014 CEST'::timestamptz),'{"[2,3]", "[20,30]"}'), > (3, tstzrange('Mon Aug 04 00:00:00 2014 CEST'::timestamptz - interval '3 days', 'Mon Aug 04 00:00:00 2014 CEST'::timestamptz),'{"[3,4]"}'), > (4, tstzrange('Mon Aug 04 00:00:00 2014 CEST'::timestamptz - interval '4 days', 'Mon Aug 04 00:00:00 2014 CEST'::timestamptz),'{"[4,5]", NULL, "[40,50]"}'), > > The problem with this is the blithe assumption that "minus N days" > is an immutable computation. It ain't. As bad luck would have it, > these intervals all manage to cross a Moroccan DST boundary > (Ramadan, I assume): For a minute I was confused, because of course we should still get the same result on the subscriber as on the publisher. But then I re-re-re-realized that the comparison data is a constant in the test script... > What I'm inclined to do about that is get rid of the totally-irrelevant- > to-this-test interval subtractions, and just write the desired timestamps > as constants. Sounds like a plan. Greetings, Andres Freund
В списке pgsql-hackers по дате отправления: