>> Do you agree that using a hashtable for it in general is a good idea >> assuming this sideeffect is removed, though? > >I have no problem with the hashtable, only with preloading it with >everything.  What I'd like to see is that the table inherited at fork() >contains just the data for the default timezone.  (At least in the >normal case where that setting hasn't been changed since postmaster >start.)
>> Do you agree that using a hashtable for it in general is a good idea
>> assuming this sideeffect is removed, though?
>
>I have no problem with the hashtable, only with preloading it with
>everything.  What I'd like to see is that the table inherited at fork()
>contains just the data for the default timezone.  (At least in the
>normal case where that setting hasn't been changed since postmaster
>start.)

Here's a patch doing this. Changes score_timezone not to use pg_tzset(),
and thus not loading all the zones in the cache. The actual timezone
being picked will be set using set_global_timezone() which in turn calls
pg_tzset() and loads it in the cache.

Magnus Hagander

zaksoup/gpdb,lintzc/gpdb,CraigHarris/gpdb,yuanzhao/gpdb,edespino/gpdb,rvs/gpdb,lisakowen/gpdb,yuanzhao/gpdb,adam8157/gpdb,jmcatamney/gpdb,tpostgres-projects/tPostgres,Quikling/gpdb,0x0FFF/gpdb,greenplum-db/gpdb,chrishajas/gpdb,lintzc/gpdb,ahachete/gpdb,kmjungersen/PostgresXL,kaknikhil/gpdb,randomtask1155/gpdb,lisakowen/gpdb,50wu/gpdb,ovr/postgres-xl,edespino/gpdb,rubikloud/gpdb,xinzweb/gpdb,Chibin/gpdb,lisakowen/gpdb,ashwinstar/gpdb,ashwinstar/gpdb,pavanvd/postgres-xl,50wu/gpdb,chrishajas/gpdb,zeroae/postgres-xl,postmind-net/postgres-xl,kaknikhil/gpdb,lisakowen/gpdb,kmjungersen/PostgresXL,janebeckman/gpdb,rubikloud/gpdb,pavanvd/postgres-xl,CraigHarris/gpdb,arcivanov/postgres-xl,janebeckman/gpdb,Chibin/gpdb,xuegang/gpdb,Quikling/gpdb,chrishajas/gpdb,atris/gpdb,oberstet/postgres-xl,xinzweb/gpdb,xinzweb/gpdb,arcivanov/postgres-xl,ashwinstar/gpdb,greenplum-db/gpdb,royc1/gpdb,randomtask1155/gpdb,yuanzhao/gpdb,greenplum-db/gpdb,postmind-net/postgres-xl,royc1/gpdb,royc1/gpdb,adam8157/gpdb,snaga/postgres-xl,xuegang/gpdb,techdragon/Postgres-XL,rvs/gpdb,Quikling/gpdb,snaga/postgres-xl,techdragon/Postgres-XL,zaksoup/gpdb,janebeckman/gpdb,Chibin/gpdb,cjcjameson/gpdb,ahachete/gpdb,Chibin/gpdb,randomtask1155/gpdb,kmjungersen/PostgresXL,atris/gpdb,cjcjameson/gpdb,xuegang/gpdb,techdragon/Postgres-XL,tangp3/gpdb,yazun/postgres-xl,xuegang/gpdb,Postgres-XL/Postgres-XL,lpetrov-pivotal/gpdb,jmcatamney/gpdb,Chibin/gpdb,techdragon/Postgres-XL,xuegang/gpdb,royc1/gpdb,CraigHarris/gpdb,lintzc/gpdb,Postgres-XL/Postgres-XL,janebeckman/gpdb,arcivanov/postgres-xl,yuanzhao/gpdb,cjcjameson/gpdb,edespino/gpdb,rubikloud/gpdb,foyzur/gpdb,kaknikhil/gpdb,janebeckman/gpdb,adam8157/gpdb,yuanzhao/gpdb,royc1/gpdb,atris/gpdb,0x0FFF/gpdb,50wu/gpdb,xinzweb/gpdb,adam8157/gpdb,lpetrov-pivotal/gpdb,janebeckman/gpdb,0x0FFF/gpdb,kaknikhil/gpdb,Quikling/gpdb,edespino/gpdb,chrishajas/gpdb,pavanvd/postgres-xl,yuanzhao/gpdb,ahachete/gpdb,lisakowen/gpdb,royc1/gpdb,lpetrov-pivotal/gpdb,edespino/gpdb,xuegang/gpdb,kmjungersen/PostgresXL,50wu/gpdb,lpetrov-pivotal/gpdb,ahachete/gpdb,janebeckman/gpdb,jmcatamney/gpdb,rubikloud/gpdb,tangp3/gpdb,edespino/gpdb,atris/gpdb,greenplum-db/gpdb,greenplum-db/gpdb,cjcjameson/gpdb,rvs/gpdb,zeroae/postgres-xl,yazun/postgres-xl,Quikling/gpdb,rvs/gpdb,tpostgres-projects/tPostgres,Postgres-XL/Postgres-XL,atris/gpdb,lpetrov-pivotal/gpdb,zeroae/postgres-xl,edespino/gpdb,tpostgres-projects/tPostgres,tpostgres-projects/tPostgres,Postgres-XL/Postgres-XL,edespino/gpdb,tangp3/gpdb,kaknikhil/gpdb,rvs/gpdb,cjcjameson/gpdb,zaksoup/gpdb,ahachete/gpdb,adam8157/gpdb,janebeckman/gpdb,atris/gpdb,lisakowen/gpdb,ovr/postgres-xl,arcivanov/postgres-xl,pavanvd/postgres-xl,zaksoup/gpdb,CraigHarris/gpdb,randomtask1155/gpdb,xuegang/gpdb,greenplum-db/gpdb,chrishajas/gpdb,pavanvd/postgres-xl,yazun/postgres-xl,xinzweb/gpdb,ashwinstar/gpdb,Chibin/gpdb,postmind-net/postgres-xl,yazun/postgres-xl,snaga/postgres-xl,rvs/gpdb,tangp3/gpdb,greenplum-db/gpdb,kaknikhil/gpdb,oberstet/postgres-xl,50wu/gpdb,xuegang/gpdb,kaknikhil/gpdb,chrishajas/gpdb,lintzc/gpdb,foyzur/gpdb,ovr/postgres-xl,foyzur/gpdb,lisakowen/gpdb,royc1/gpdb,zaksoup/gpdb,Chibin/gpdb,ovr/postgres-xl,xinzweb/gpdb,cjcjameson/gpdb,50wu/gpdb,Quikling/gpdb,tangp3/gpdb,50wu/gpdb,CraigHarris/gpdb,zeroae/postgres-xl,jmcatamney/gpdb,Quikling/gpdb,Quikling/gpdb,lintzc/gpdb,zaksoup/gpdb,yuanzhao/gpdb,janebeckman/gpdb,snaga/postgres-xl,rvs/gpdb,oberstet/postgres-xl,arcivanov/postgres-xl,Quikling/gpdb,rvs/gpdb,randomtask1155/gpdb,techdragon/Postgres-XL,Postgres-XL/Postgres-XL,Chibin/gpdb,tangp3/gpdb,ashwinstar/gpdb,yuanzhao/gpdb,CraigHarris/gpdb,yazun/postgres-xl,ashwinstar/gpdb,rubikloud/gpdb,lpetrov-pivotal/gpdb,cjcjameson/gpdb,ahachete/gpdb,jmcatamney/gpdb,postmind-net/postgres-xl,atris/gpdb,tangp3/gpdb,foyzur/gpdb,ahachete/gpdb,foyzur/gpdb,xinzweb/gpdb,chrishajas/gpdb,yuanzhao/gpdb,janebeckman/gpdb,xinzweb/gpdb,jmcatamney/gpdb,Chibin/gpdb,0x0FFF/gpdb,adam8157/gpdb,CraigHarris/gpdb,zeroae/postgres-xl,jmcatamney/gpdb,kaknikhil/gpdb,tpostgres-projects/tPostgres,foyzur/gpdb,randomtask1155/gpdb,lpetrov-pivotal/gpdb,adam8157/gpdb,lintzc/gpdb,lintzc/gpdb,kaknikhil/gpdb,atris/gpdb,kaknikhil/gpdb,postmind-net/postgres-xl,ashwinstar/gpdb,yuanzhao/gpdb,arcivanov/postgres-xl,lisakowen/gpdb,CraigHarris/gpdb,rvs/gpdb,foyzur/gpdb,zaksoup/gpdb,Quikling/gpdb,oberstet/postgres-xl,foyzur/gpdb,chrishajas/gpdb,jmcatamney/gpdb,kmjungersen/PostgresXL,ahachete/gpdb,randomtask1155/gpdb,ovr/postgres-xl,edespino/gpdb,cjcjameson/gpdb,randomtask1155/gpdb,0x0FFF/gpdb,lpetrov-pivotal/gpdb,rubikloud/gpdb,adam8157/gpdb,CraigHarris/gpdb,snaga/postgres-xl,ashwinstar/gpdb,0x0FFF/gpdb,50wu/gpdb,royc1/gpdb,xuegang/gpdb,Chibin/gpdb,rubikloud/gpdb,lintzc/gpdb,edespino/gpdb,0x0FFF/gpdb,0x0FFF/gpdb,rubikloud/gpdb,cjcjameson/gpdb,oberstet/postgres-xl,cjcjameson/gpdb,rvs/gpdb,greenplum-db/gpdb,zaksoup/gpdb,lintzc/gpdb,tangp3/gpdb