pgsql: Attached patch gets rid of the global timezone in the following

From: momjian(at)svr1(dot)postgresql(dot)org (Bruce Momjian)
To: pgsql-committers(at)postgresql(dot)org
Subject: pgsql: Attached patch gets rid of the global timezone in the following
Date: 2005-04-19 03:13:59
Message-ID: 20050419031359.E3AAF53826@svr1.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Log Message:
-----------
Attached patch gets rid of the global timezone in the following steps:

* Changes the APIs to the timezone functions to take a pg_tz pointer as
an argument, representing the timezone to use for the selected
operation.

* Adds a global_timezone variable that represents the current timezone
in the backend as set by SET TIMEZONE (or guc, or env, etc).

* Implements a hash-table cache of loaded tables, so we don't have to
read and parse the TZ file everytime we change a timezone. While not
necesasry now (we don't change timezones very often), I beleive this
will be necessary (or at least good) when "multiple timezones in the
same query" is eventually implemented. And code-wise, this was the time
to do it.

There are no user-visible changes at this time. Implementing the
"multiple zones in one query" is a later step...

This also gets rid of some of the cruft needed to "back out a timezone
change", since we previously couldn't check a timezone unless it was
activated first.

Passes regression tests on win32, linux (slackware 10) and solaris x86.

Magnus Hagander

Modified Files:
--------------
pgsql/src/backend/commands:
variable.c (r1.105 -> r1.106)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/commands/variable.c.diff?r1=1.105&r2=1.106)
pgsql/src/backend/postmaster:
syslogger.c (r1.14 -> r1.15)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/postmaster/syslogger.c.diff?r1=1.14&r2=1.15)
pgsql/src/backend/utils/adt:
datetime.c (r1.137 -> r1.138)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/adt/datetime.c.diff?r1=1.137&r2=1.138)
nabstime.c (r1.127 -> r1.128)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/adt/nabstime.c.diff?r1=1.127&r2=1.128)
timestamp.c (r1.118 -> r1.119)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/adt/timestamp.c.diff?r1=1.118&r2=1.119)
pgsql/src/include:
pgtime.h (r1.6 -> r1.7)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/pgtime.h.diff?r1=1.6&r2=1.7)
pgsql/src/timezone:
localtime.c (r1.9 -> r1.10)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/timezone/localtime.c.diff?r1=1.9&r2=1.10)
pgtz.c (r1.29 -> r1.30)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/timezone/pgtz.c.diff?r1=1.29&r2=1.30)
pgtz.h (r1.10 -> r1.11)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/timezone/pgtz.h.diff?r1=1.10&r2=1.11)
strftime.c (r1.5 -> r1.6)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/timezone/strftime.c.diff?r1=1.5&r2=1.6)
zic.c (r1.13 -> r1.14)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/timezone/zic.c.diff?r1=1.13&r2=1.14)

Browse pgsql-committers by date

  From Date Subject
Next Message Bruce Momjian 2005-04-19 03:35:15 pgsql: The following patch should allow UPDATE_INTERVAL to be specified
Previous Message Bruce Momjian 2005-04-19 01:40:03 pgsql: Update PITR wording, per Simon.