[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: libc: Bucharest has wrong timezone



Kaixo!

On Thu, May 13, 2004 at 01:48:07PM +0200, Gwenole Beauchesne wrote:

> Adrian Stanciu <adrian@sadyc.net> wrote
> 
> > I write to you because you're listed as packager for libc6 or timezone.
> > 
> > Recently I have noticed that Bucharest (Romania) has GMT+3 timezone
> > (using /usr/share/zoneinfo/Europe/Bucharest)

Has it?
I looked in both 9.2 (glibc 2.3.2) and 10.0 (glibc 2.3.3) and both
have EEST instead, for Europe/Bucharest.
(which is +03:00 ahead of GMT, right now, but not always;
that's the difference between a GMT+xxxx timezone (which is always
at that hour and an xxT timezone, which may have its difference change
over time)

Here is the source definition for "Europe/Bucharest" (only last line
matters, others are for zoneinfo in previous times)

> # Zone  NAME            GMTOFF  RULES   FORMAT  [UNTIL]
> Zone Europe/Bucharest   1:44:24 -       LMT     1891 Oct
...
>                         2:00    EU      EE%sT

That is, it's name is "EET" for a winter time of GMT+0200, 
and "EEST" for a summer time of GMT+0300; the way the winter/summer
time is changed is done following the "EU" rules.

|# Rule  NAME    FROM    TO      TYPE    IN      ON       AT     SAVE LETTER/S
|Rule    EU      1981    max     -       Mar     lastSun  1:00u  1:00 S
|Rule    EU      1996    max     -       Oct     lastSun  1:00u  0    -

(the hour changes are on last sunday of March at 01:00 UTC and last
Sunday of October at 01:00 UTC; on March the rule says it adds +01:00 to
the timezone, and the extra letter is "S" (EE%sT -> EEST); on
October the rule says it adds nothing and no extra letter (EE%sT->EET))

So; to define properly a zoneinfo entry several information are needed:

- the base difference to UTC (also called GMT timezone, even if they
  aren't exactly the same)
- the timezone code(s) to use
- if the difference tgo UTC changes during the year (eg: summer/winter
  hours), the rules of the change
- from when (and possibly until when) that info is valid


On the comments for "Europe/Bucharest" there is:

> # Nine O'clock</a> (1998-10-23) reports that the switch occurred at
> # 04:00 local time in fall 1998.  For lack of better info,
> # assume that Romania and Moldova switched to EU rules in 1997,
> # the same year as Bulgaria.

The previous Rules for "Europe/Bucharest" were:
- "Romania" (until 1981)
- "C-Eur" (until 1991)
- "Romania" (until 1994)
- "E-Eur" (until 1997)

but those only define the way the summer/winter change is done (day and
hour of the switch),
the time difference with GMT is 02:00 (+01:00 in summer) since 1931
according to the source.

>> Recently I have noticed that Bucharest (Romania) has GMT+3 timezone

And what should it be?
Is there some place we could refer for official data?

>> I think this is a general libc "bug",

Yes; timezone info comes with glibc and is thus common to all systems
using GNU libc.


-- 
Ki ça vos våye bén,
Pablo Saratxaga

http://chanae.walon.org/pablo/		PGP Key available, key ID: 0xD9B85466
[you can write me in Walloon, Spanish, French, English, Catalan or Esperanto]
[min povas skribi en valona, esperanta, angla aux latinidaj lingvoj]

Attachment: pgpHBkZ0U8qL7.pgp
Description: PGP signature


Reply to: