Re: BUG #17055: Logical replication worker crashes when applying update of row that dose not exist in target partiti

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Amit Langote <amitlangote09(at)gmail(dot)com>
Cc: Michael Paquier <michael(at)paquier(dot)xyz>, sbernikov(at)gmail(dot)com, PostgreSQL mailing lists <pgsql-bugs(at)lists(dot)postgresql(dot)org>
Subject: Re: BUG #17055: Logical replication worker crashes when applying update of row that dose not exist in target partiti
Date: 2021-06-11 15:01:07
Message-ID: 1881335.1623423667@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

Amit Langote <amitlangote09(at)gmail(dot)com> writes:
> On Fri, Jun 11, 2021 at 3:26 PM Michael Paquier <michael(at)paquier(dot)xyz> wrote:
>> It seems to me that it would make sense to have some coverage. We've
>> caught issues in the past in this area, particularly with buildfarm
>> animals running CLOBBER_CACHE_ALWAYS.

> I thought about it for a minute when writing the patch I posted, but
> wasn't really sure what the test case would look like. The only
> external proof that the case worked correctly, AFAICS, is the DEBUG1
> message that's written to the log. How do we add a test case with
> that? I know you mentioned an idea before to check/grep the log for
> such cases. Is that how?

I see from the coverage report that *none* of the did-not-find-tuple
code paths in worker.c are exercised. This does not seem OK. I agree
that probably the only way to have a test case is to kick up the debug
level to DEBUG1 and grep the log to confirm that the message is there.
IIRC, we already have infrastructure for grepping the log, so this
shouldn't be that hard. Will work on it today.

(Meanwhile, thanks for the diagnosis and patch!)

regards, tom lane

In response to

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message Tom Lane 2021-06-11 20:15:20 Re: BUG #17055: Logical replication worker crashes when applying update of row that dose not exist in target partiti
Previous Message Amit Langote 2021-06-11 07:30:03 Re: BUG #17055: Logical replication worker crashes when applying update of row that dose not exist in target partiti