Details
Description
In v5.5.23 on XP SP3, the server variable system_time _zone is set to a wrong value on server startup. Its value is "ope" (without the quotes), not a valid time zone designation.
IMHO, this is possibly derived form the string "Westeuropäische Sommerzeit" which is returned by the GetTimeZoneInformation() windows API call on my machine (meaning CEST, +02:00).
Note: I have an environment variable called TZ, whose current value is "CET" (without the quotes).
If I unset this variable inside a cmd.exe window, and then start mysqld.exe --console from same window, system_time _zone will be different, namely "Westeuropische Sommerzeit" (without the quotes) - note the missing "ä".
Again, this appears not to be a valid timezone name according to the mysql.time_zone_name table.
The correct value would probably be CET or Europe/Berlin.
Gliffy Diagrams
Attachments
Activity
- All
- Comments
- Work Log
- History
- Activity
- Transitions
Re: system_time_zone is set wrong
After some searching, the problem is most probably that the time zone name returned from the windows registry.by GetTimeZoneInformation() is a) non-standard and b) localized. You could probably scan the subkeys of HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones until you find one whose Std or Dlt value is equal to the GetTimeZoneInformation() result (not necessarily identical to the subkey name!). Then parse the TZI value of the same entry for the appropriate bias'es (cf http://www.pcmag.com/article2/0,1895,1166624,00.asp for format info), and use the computed bias as +|-nn:nn.