Win32 timezone matching

From: Magnus Hagander <magnus(at)hagander(dot)net>
To: PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>
Subject: Win32 timezone matching
Date: 2010-04-06 20:48:01
Message-ID: g2r9837222c1004061348kb6451cfeob02cf4b3c35db1c@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

When diagnosing a problem for a guy in the german channel (with Stefan
as mediator :P), we've found a case where the timezone information in
the registry seem to be empty for some timezones. The current timezone
matching code will abort scanning when it comes across one of these,
thus claiming it can't match the timezone, and reverting to GMT.

We've seen some reports prevously that looked like this, but never
really managed to get it diagnosed. Having checked the registry on
this machine, it appears to simply be that "Std" and "Dlt" are missing
from some entries.

The attach patch changes our scan to skip to the next timezone when
this happens, instead of aborting. The only downtime I can see from
this is that in case there are a *lot* of broken timezones (like "all
of them"), well log a lot of warnings. But it will only happen on
server startup, so I think it's ok.

Comments?

--
Magnus Hagander
Me: http://www.hagander.net/
Work: http://www.redpill-linpro.com/

Attachment Content-Type Size
win32_tzskip.patch application/octet-stream 1004 bytes

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Magnus Hagander 2010-04-06 21:17:02 Missing win32 timezones
Previous Message Merlin Moncure 2010-04-06 20:13:22 Re: SELECT constant; takes 15x longer on 9.0?