Re: BUG #15114: logical decoding Segmentation fault

From: Michael Paquier <michael(at)paquier(dot)xyz>
To: Peter Eisentraut <peter(dot)eisentraut(at)2ndquadrant(dot)com>
Cc: Kyotaro HORIGUCHI <horiguchi(dot)kyotaro(at)lab(dot)ntt(dot)co(dot)jp>, andres(at)anarazel(dot)de, petr(dot)jelinek(at)2ndquadrant(dot)com, pet(dot)slavov(at)gmail(dot)com, alvherre(at)alvh(dot)no-ip(dot)org, petr(at)2ndquadrant(dot)com, pgsql-bugs(at)lists(dot)postgresql(dot)org
Subject: Re: BUG #15114: logical decoding Segmentation fault
Date: 2019-01-29 07:59:41
Message-ID: 20190129075941.GH3121@paquier.xyz
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

On Mon, Jan 28, 2019 at 10:32:16PM +0100, Peter Eisentraut wrote:
> My approach is to make RelationGetIndexAttrBitmap() not need a snapshot.
> The whole code was overly complicated anyway, calling BuildIndexInfo()
> and then throwing the result away. We can do it directly more
> efficiently and avoid all the business about eval_const_expressions().
> Moreover, this fixes the problem in a central place and does not require
> bespoke separate fixes in the publisher and subscriber code. External
> logical decoding or logical replication implementations could also be
> affected and would benefit from this fix.

I have spent some time for the last couple of days looking at this
patch, and that's a neat approach.

+ * those might run constants evaluation, which needs a snapshot, which
"constants evaluation" sounds like weird English. "constant
evaluation" or "evaluation of constants would be better"?

Thanks for adding a test case as well, Peter.
--
Michael

In response to

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message Sandeep Thakkar 2019-01-29 09:02:10 Re: BUG #15564: Setup sets wrong data type for value in Windows Registry
Previous Message Andrew Gierth 2019-01-29 07:30:09 Re: BUG #15609: synchronous_commit=off insert performance regression with secondary indexes