Re: pg_internal.init is hazardous to your health - Mailing list pgsql-hackers

From Heikki Linnakangas
Subject Re: pg_internal.init is hazardous to your health
Date
Msg-id 453752BB.1000609@enterprisedb.com
Whole thread Raw
In response to Re: pg_internal.init is hazardous to your health  ("Simon Riggs" <simon@2ndquadrant.com>)
List 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


pgsql-hackers by date:

Previous
From: "Gurjeet Singh"
Date:
Subject: Re: New CRC algorithm: Slicing by 8
Next
From: NikhilS
Date:
Subject: Re: Additional stats for Relations