Re: [BUG]Update Toast data failure in logical replication

From: Dilip Kumar <dilipbalaut(at)gmail(dot)com>
To: "tanghy(dot)fnst(at)fujitsu(dot)com" <tanghy(dot)fnst(at)fujitsu(dot)com>
Cc: pgsql-hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: [BUG]Update Toast data failure in logical replication
Date: 2021-05-31 09:11:46
Message-ID: CAFiTN-tir1MJUBaUSdspOJZZZXbZgzufwr8rpaXR2KZ0HBe8OA@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Mon, May 31, 2021 at 12:20 PM Dilip Kumar <dilipbalaut(at)gmail(dot)com> wrote:
>
> On Mon, May 31, 2021 at 8:04 AM tanghy(dot)fnst(at)fujitsu(dot)com
> <tanghy(dot)fnst(at)fujitsu(dot)com> wrote:
> >
> > On Friday, May 28, 2021 6:51 PM, Dilip Kumar <dilipbalaut(at)gmail(dot)com> wrote:
> > > Seems you did not set the replica identity for updating the tuple.
> > > Try this before updating, and it should work.
> >
> > Thanks for your reply. I tried it.
> >
> > > ALTER TABLE toasted_key REPLICA IDENTITY USING INDEX toasted_key_pkey;
> >
> > This didn't work.
> >
> > > or
> > >
> > > ALTER TABLE toasted_key REPLICA IDENTITY FULL.
> >
> > It worked.
> >
> > And I noticed if the length of PRIMARY KEY (toasted_key) is short, data could be synchronized successfully with default replica identity.
> > Could you tell me why we need to set replica identity?
>
> Looks like some problem if the replica identity is an index and the
> value is stored externally, I will debug this and let you know.

The problem is if the key attribute is not changed we don't log it as
it should get logged along with the updated tuple, but if it is
externally stored then the complete key will never be logged because
there is no log from the toast table. For fixing this if the key is
externally stored then always log that.

Please test with the attached patch.

--
Regards,
Dilip Kumar
EnterpriseDB: http://www.enterprisedb.com

Attachment Content-Type Size
v1-0001-Extract-unchanged-replica-identity-key-if-it-is-s.patch text/x-patch 1.2 KB

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Magnus Hagander 2021-05-31 09:31:07 Re: Fix RADIUS error reporting in hba file parsing
Previous Message Christoph Moench-Tegeder 2021-05-31 08:47:11 Re: How to disable the autovacuum ?