From: | Andres Freund <andres(at)anarazel(dot)de> |
---|---|
To: | Simon Riggs <simon(at)2ndQuadrant(dot)com> |
Cc: | Konstantin Knizhnik <k(dot)knizhnik(at)postgrespro(dot)ru>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: Relation cache invalidation on replica |
Date: | 2016-02-27 02:14:05 |
Message-ID: | 20160227021405.mcowwq3u2vcg4g6n@alap3.anarazel.de |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On 2016-02-27 01:45:57 +0000, Simon Riggs wrote:
> Surely then the fix is to make heap_inplace_update() assign an xid? That
> way any catalog change will always generate a commit record containing the
> invalidation that goes with the change. No need to fix up the breakage
> later.
Well, we could, but it'd also break things where we rely on
heap_inplace_update not assigning an xid. I'm not seing why that's
better than my proposal of doing this
(http://archives.postgresql.org/message-id/20160227002958.peftvmcx4dxwe244%40alap3.anarazel.de),
by emitting a commit record in RecordTransactionCommmit() if nrels != 0
|| nmsgs != 0 || RelcacheInitFileInval
.
> The other heap_insert|update|delete functions (and similar) all assign xid,
> so it is consistent for us to do that for inplace_update also.
I don't think that follows. Inplace updates an absolute special case,
where are *not allowed* to include an xid in the tuple.
Andres
From | Date | Subject | |
---|---|---|---|
Next Message | Andres Freund | 2016-02-27 02:17:04 | Re: pgsql: Respect TEMP_CONFIG when running contrib regression tests. |
Previous Message | Robert Haas | 2016-02-27 02:13:15 | Re: pgsql: Respect TEMP_CONFIG when running contrib regression tests. |