Re: Writing WAL for relcache invalidation:pg_internal.init

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: "Simon Riggs" <simon(at)2ndquadrant(dot)com>
Cc: pgsql-hackers(at)postgresql(dot)org, pgsql-patches(at)postgresql(dot)org
Subject: Re: Writing WAL for relcache invalidation:pg_internal.init
Date: 2006-11-02 14:55:36
Message-ID: 16213.1162479336@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers pgsql-patches

"Simon Riggs" <simon(at)2ndquadrant(dot)com> writes:
> On Wed, 2006-11-01 at 12:05 -0500, Tom Lane wrote:
>> I don't think this works.

> Surely you are pointing out a bug, no?

> If a backend did crash, the init file would be wrong and we'd get
> exactly the same wrong relfilenode errors we got after that PITR.

Yeah, which is the same bug we've got now. They're both WAL-replay-
doesn't-fix-the-init-file cases.

> The issue must surely be that the patch isn't wrong per se, just that
> RelationCacheInitFileInvalidate is called too late and that requires an
> additional fix.

No. In the non-crash situation there is sufficient interlocking to
avoid a problem, and I feel no desire to redesign that mechanism.
Trying to do it before commit would create its own issues, anyway:
someone could install a new init file before you finish committing.

regards, tom lane

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2006-11-02 14:59:54 Re: [PATCHES] Writing WAL for relcache invalidation:pg_internal.init
Previous Message Simon Riggs 2006-11-02 14:44:24 Re: [PATCHES] Writing WAL for relcacheinvalidation:pg_internal.init

Browse pgsql-patches by date

  From Date Subject
Next Message Tom Lane 2006-11-02 14:59:54 Re: [PATCHES] Writing WAL for relcache invalidation:pg_internal.init
Previous Message Simon Riggs 2006-11-02 14:44:24 Re: [PATCHES] Writing WAL for relcacheinvalidation:pg_internal.init