| From: | Andrei Lepikhov <lepihov(at)gmail(dot)com> |
|---|---|
| To: | Alexander Korotkov <aekorotkov(at)gmail(dot)com>, Tender Wang <tndrwang(at)gmail(dot)com> |
| Cc: | Kirill Reshke <reshkekirill(at)gmail(dot)com>, Fujii Masao <masao(dot)fujii(at)gmail(dot)com>, ammmkilo(at)163(dot)com, pgsql-bugs(at)lists(dot)postgresql(dot)org |
| Subject: | Re: BUG #19435: Error: "No relation entry for relid 2" Triggered by Complex Join with Self-Referencing Tables |
| Date: | 2026-03-18 12:18:27 |
| Message-ID: | a78fe5d4-e6b8-4b3c-9cfd-135edbb68e4c@gmail.com |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-bugs |
On 18/3/26 09:40, Alexander Korotkov wrote:
> What about being more generic and call ChangeVarNodes_walker() for the
> node in ChangeVarNodesWalkExpression()? It also works with out case
> and avoids code duplication.
I’ve reached the same conclusion. We lost a possible case when the
RestrictInfo→clause contains a bare Var that isn’t pushed into either
the left or right subtree.
I think we can fix this by replacing the expression walker with
ChangeVarNodes_walker().
What is the reason for the second change? Tender, can you show us how to
reproduce the issue so we can support your update to
restrict_infos_logically_equal? If we include it, we should add a test.
--
regards, Andrei Lepikhov,
pgEdge
| Attachment | Content-Type | Size |
|---|---|---|
| fix.diff | text/plain | 541 bytes |
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Alexander Korotkov | 2026-03-18 12:21:34 | Re: BUG #19435: Error: "No relation entry for relid 2" Triggered by Complex Join with Self-Referencing Tables |
| Previous Message | Ana Almeida | 2026-03-18 09:54:09 | Segmentation fault in PostgreSQL 17.7 during REINDEX TABLE CONCURRENTLY |