Re: Oversight in reparameterize_path_by_child leading to executor crash

Richard Guo <guofenglinux@gmail.com>

From: Richard Guo <guofenglinux@gmail.com>
To: Alena Rybakina <lena.ribackina@yandex.ru>
Cc: Tom Lane <tgl@sss.pgh.pa.us>, Ashutosh Bapat <ashutosh.bapat.oss@gmail.com>, PostgreSQL-development <pgsql-hackers@postgresql.org>, Andrei Lepikhov <a.lepikhov@postgrespro.ru>
Date: 2023-12-11T03:02:24Z
Lists: pgsql-hackers

Commits

Same data as JSON: GET /api/v1/messages/:b64id/commits the thread's linked commits as JSON, with link sources. API reference →
  1. Postpone reparameterization of paths until create_plan().

  2. Apply band-aid fix for an oversight in reparameterize_path_by_child.

On Fri, Dec 8, 2023 at 5:39 PM Alena Rybakina <lena.ribackina@yandex.ru>
wrote:

> On 06.12.2023 10:30, Richard Guo wrote:
> > I've self-reviewed this patch again and I think it's now in a
> > committable state.  I'm wondering if we can mark it as 'Ready for
> > Committer' now, or we need more review comments/feedbacks.
> >
> > To recap, this patch postpones reparameterization of paths until
> > createplan.c, which would help avoid building the reparameterized
> > expressions we might not use.  More importantly, it makes it possible to
> > modify the expressions in RTEs (e.g. tablesample) and in RelOptInfos
> > (e.g. baserestrictinfo) for reparameterization.  Failing to do that can
> > lead to executor crashes, wrong results, or planning errors, as we have
> > already seen.

I marked it as 'Ready for Committer'. I think it is ready.


Thank you.  Appreciate that.

Thanks
Richard