Re: Some problems regarding the self-join elimination code

From: Andrei Lepikhov <lepihov(at)gmail(dot)com>
To: Alexander Korotkov <aekorotkov(at)gmail(dot)com>
Cc: Richard Guo <guofenglinux(at)gmail(dot)com>, Dean Rasheed <dean(dot)a(dot)rasheed(at)gmail(dot)com>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Pg Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>
Subject: Re: Some problems regarding the self-join elimination code
Date: 2025-04-30 13:34:28
Message-ID: 60391fbd-e341-4a1e-96b7-81ee7ebb35df@gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On 4/30/25 13:22, Alexander Korotkov wrote:
>> Thank you, Andrei. I've put it all together.
>> 0001 Fixes material bugs in ChangeVarNodes_walker() including regression test
>> 0002 Puts back comments which got accidentally removed
>> 0003 Refactors ChangeVarNodesExtended() with custom user-defined callback
> I've revised the remaining refactoring patch. I've made a callback an
> additional callback, but not the replacement to the walker. It looks
> better for me now. Also, I've written some comments and the commit
> message. Any thoughts?
It seems quite elegant to me.
I have not precisely examined the part with the RestrictInfo replacement
logic - I guess you just copied it - I reviewed the rest of the patch.

Generally, it looks good, but let me be a little picky.
1. Looking into the callback-related code, I suggest changing the name
of ChangeVarNodes_callback to something less general and more specific -
like replace_relid_callback. My variant doesn't seem the best, but
general-purposed name seems worse.
2. This callback doesn't modify query replacement logic's behaviour- it
only affects expressions. It makes sense to write about that in the
description of the ChangeVarNodesExtended.
3. Should the ChangeVarNodesWalkExpression function return the walker's
returning value?

--
regards, Andrei Lepikhov

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2025-04-30 13:46:07 Re: Accounting for metapages in genericcostestimate()
Previous Message Daniel Gustafsson 2025-04-30 12:55:07 Re: [PoC] Federated Authn/z with OAUTHBEARER