Re: Australian timezone configure option - Mailing list pgsql-patches

From Bruce Momjian
Subject Re: Australian timezone configure option
Date
Msg-id 200106121626.f5CGQLY17403@candle.pha.pa.us
Whole thread Raw
In response to Australian timezone configure option  (Chris Dunlop <chris@onthe.net.au>)
Responses Re: Australian timezone configure option  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-patches
> Bruce Momjian <pgman@candle.pha.pa.us> writes:
> > Here is a new version of the patch.
>
> It's still horridly ugly.  Why not put the three Aussie-specific entries
> in a separate aussie_datetktbl array, and have the lookup look like
>
>     if (Australian_timezones)
>     {
>         tp = datebsearch(lowtoken, aussie_datetktbl, sz_aussie_datetktbl);
>         if (tp == NULL)
>             tp = datebsearch(lowtoken, datetktbl, szdatetktbl);
>     }
>     else
>         tp = datebsearch(lowtoken, datetktbl, szdatetktbl);
>
> instead of modifying the lookup table on the fly.

I thought about that but the use of the cache had me concerned,
particularly for modularity.  This way there is only one table to query
with one call to the bsearch function.

However, I can go with the two-table approach if people prefer it.

> > I found I didn't need to clear the date cache.
>
> Hmm, are you sure about that?  I'm not.

I checked and it caches a pointer to the struct, not the values
themselves, and we don't change the structure, just the secondary values
and not the key used by the bsearch.

--
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 853-3000
  +  If your life is a hard drive,     |  830 Blythe Avenue
  +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026

pgsql-patches by date:

Previous
From: Chris Dunlop
Date:
Subject: Re: Australian timezone configure option
Next
From: Tom Lane
Date:
Subject: Re: Australian timezone configure option