Re: Problem with logical replication - Mailing list pgsql-hackers

From Michael Paquier
Subject Re: Problem with logical replication
Date
Msg-id 20200511072852.GE88791@paquier.xyz
Whole thread Raw
In response to Re: Problem with logical replication  (Euler Taveira <euler.taveira@2ndquadrant.com>)
Responses Re: Problem with logical replication  (Masahiko Sawada <masahiko.sawada@2ndquadrant.com>)
List pgsql-hackers
On Sun, May 10, 2020 at 07:08:03PM -0300, Euler Taveira wrote:
> I attached a patch with the described solution. I also included a test that
> covers this scenario.

-   Assert(RelationGetReplicaIndex(rel) == RelationGetRelid(idxrel));
+   Assert(GetRelationIdentityOrPK(rel) == RelationGetRelid(idxrel));

Not much a fan of adding a routine to relcache.c to do the work of two
routines already present, so I think that we had better add an extra
condition based on RelationGetPrimaryKeyIndex, and give up on
GetRelationIdentityOrPK() in execReplication.c.  Wouldn't it also be
better to cross-check the replica identity here depending on if
RelationGetReplicaIndex() returns an invalid OID or not?
--
Michael

Attachment

pgsql-hackers by date:

Previous
From: Michael Paquier
Date:
Subject: Re: Strange decreasing value of pg_last_wal_receive_lsn()
Next
From: Kyotaro Horiguchi
Date:
Subject: Re: pg_regress cleans up tablespace twice.