diff --git a/doc/src/sgml/datatype.sgml b/doc/src/sgml/datatype.sgml index deeba7bc68c..029dec3dcd4 100644 --- a/doc/src/sgml/datatype.sgml +++ b/doc/src/sgml/datatype.sgml @@ -1,4 +1,4 @@ - + Data Types @@ -2194,12 +2194,13 @@ January 8 04:05:06 1999 PST were not already a recognized zone name, it would be accepted and would be functionally equivalent to USA East Coast time. When a daylight-savings zone name is present, it is assumed to be used - according to USA time zone rules, so this feature is of limited use - outside North America. One should also be wary that this provision can - lead to silently accepting bogus input, since there is no check on the - reasonableness of the zone abbreviations. For example, SET - TIMEZONE TO FOOBAR0 will work, leaving the system effectively using - a rather peculiar abbreviation for GMT. + according to the same daylight-savings transition rules used in the + zic time zone database's posixrules entry. + In a standard PostgreSQL installation, + posixrules is the same as US/Eastern, so + that POSIX-style time zone specifications follow USA daylight-savings + rules. If needed, you can adjust this behavior by replacing the + posixrules file. @@ -2210,6 +2211,14 @@ January 8 04:05:06 1999 PST rule and so have two possible UTC offsets. + + One should be wary that the POSIX-style time zone feature can + lead to silently accepting bogus input, since there is no check on the + reasonableness of the zone abbreviations. For example, SET + TIMEZONE TO FOOBAR0 will work, leaving the system effectively using + a rather peculiar abbreviation for UTC. + + In all cases, timezone names are recognized case-insensitively. (This is a change from PostgreSQL versions diff --git a/src/timezone/Makefile b/src/timezone/Makefile index 69e79b8536e..052cad16a4a 100644 --- a/src/timezone/Makefile +++ b/src/timezone/Makefile @@ -4,7 +4,7 @@ # Makefile for the timezone library # IDENTIFICATION -# $PostgreSQL: pgsql/src/timezone/Makefile,v 1.24 2006/07/25 03:51:22 tgl Exp $ +# $PostgreSQL: pgsql/src/timezone/Makefile,v 1.24.2.1 2007/03/14 17:38:15 tgl Exp $ # #------------------------------------------------------------------------- @@ -25,6 +25,10 @@ TZDATA := africa antarctica asia australasia europe northamerica southamerica \ pacificnew etcetera factory backward systemv solar87 solar88 solar89 TZDATAFILES := $(TZDATA:%=$(srcdir)/data/%) +# which zone should determine the DST rules (not the specific UTC offset!) +# for POSIX-style timezone specs +POSIXRULES = US/Eastern + all: SUBSYS.o submake-libpgport zic SUBSYS.o: $(OBJS) @@ -34,7 +38,7 @@ zic: $(ZICOBJS) $(CC) $(CFLAGS) $(ZICOBJS) $(LDFLAGS) $(LIBS) -o $@$(X) install: all installdirs - ./zic -d '$(DESTDIR)$(datadir)/timezone' $(TZDATAFILES) + ./zic -d '$(DESTDIR)$(datadir)/timezone' -p '$(POSIXRULES)' $(TZDATAFILES) $(MAKE) -C tznames $@ installdirs: