| From: | "Heikki Linnakangas" <heikki(at)enterprisedb(dot)com> | 
|---|---|
| To: | "Simon Riggs" <simon(at)2ndquadrant(dot)com> | 
| Cc: | "Gavin Sherry" <swm(at)linuxworld(dot)com(dot)au>, "Tom Lane" <tgl(at)sss(dot)pgh(dot)pa(dot)us>, <pgsql-hackers(at)postgresql(dot)org> | 
| Subject: | Re: pg_internal.init is hazardous to your health | 
| Date: | 2006-10-19 10:26:03 | 
| Message-ID: | 453752BB.1000609@enterprisedb.com | 
| Views: | Whole Thread | Raw Message | Download mbox | Resend email | 
| Thread: | |
| Lists: | pgsql-hackers | 
Simon Riggs wrote:
> RelationCacheInitFileInvalidate() is also called on each
> FinishPreparedTransaction(). 
It's only called if the prepared transaction invalidated the init file.
> If that is called 100% of the time, then we
> can skip writing an additional record for prepared transactions by
> triggering the removal of pg_internal.init when we see a
> XLOG_XACT_COMMIT_PREPARED during replay. 
> Not sure whether we need to do that, Heikki? Anyone?
> I'm guessing no, but it seems sensible to check.
If you write the WAL record in RelationCacheInitFileInvalidate(true), 
that's enough. No extra handling for prepared transactions is needed.
-- 
   Heikki Linnakangas
   EnterpriseDB   http://www.enterprisedb.com
| From | Date | Subject | |
|---|---|---|---|
| Next Message | NikhilS | 2006-10-19 10:40:46 | Re: Additional stats for Relations | 
| Previous Message | Gurjeet Singh | 2006-10-19 08:31:17 | Re: New CRC algorithm: Slicing by 8 |