|From:||Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>|
|To:||Japin Li <japinli(at)hotmail(dot)com>|
|Cc:||Erik Rijkers <er(at)xs4all(dot)nl>, Andrew Dunstan <andrew(at)dunslane(dot)net>, Simon Riggs <simon(dot)riggs(at)enterprisedb(dot)com>, Tomas Vondra <tomas(dot)vondra(at)enterprisedb(dot)com>, Zhihong Yu <zyu(at)yugabyte(dot)com>, Daniel Westermann <dwe(at)dbi-services(dot)com>, Amit Langote <amitlangote09(at)gmail(dot)com>, Justin Pryzby <pryzby(at)telsasoft(dot)com>, Pavan Deolasee <pavan(dot)deolasee(at)gmail(dot)com>, pgsql-hackers(at)lists(dot)postgresql(dot)org|
|Subject:||Re: support for MERGE|
|Views:||Raw Message | Whole Thread | Download mbox | Resend email|
On 2022-Jan-17, Japin Li wrote:
> So for NOT MATCHED, we are expected not use the target table columns.
> The code comes from execMerge.c says:
> * Make source tuple available to ExecQual and ExecProject. We don't need
> * the target tuple, since the WHEN quals and the targetlist can't refer to
> * the target columns.
> econtext->ecxt_scantuple = NULL;
> econtext->ecxt_innertuple = slot;
> econtext->ecxt_outertuple = NULL;
> It will set econtext->ecxt_scantuple to NULL, which leads the crash.
Right. So this was broken by the fact that I recently allowed MATCHED
actions to target DO NOTHING; previously, only NOT MATCHED actions could
do so. So the bug was present, but it wasn't accessible.
> Should we setNamespaceVisibilityForRTE() for CMD_NOTHING? I try to set it
> and it works as expected. OTOH, the system attributes from target table
> also cannot be accessible. I'm not sure the v6 patch how to implement this
I changed this block so that it depends on whether the clause is MATCHED
or NOT MATCHED, rather than the action. I think it was pretty
nonsensical for it to be keyed on action type, and it made the code
Álvaro Herrera Valdivia, Chile — https://www.EnterpriseDB.com/
"All rings of power are equal,
But some rings of power are more equal than others."
(George Orwell's The Lord of the Rings)
|Next Message||Alvaro Herrera||2022-01-20 21:02:43||Re: support for MERGE|
|Previous Message||James Coleman||2022-01-20 20:43:37||Re: Document atthasmissing default optimization avoids verification table scan|