Re: BUG #17985: Inconsistent results of SELECT comparing two CASE WHEN clause

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: zuming(dot)jiang(at)inf(dot)ethz(dot)ch
Cc: pgsql-bugs(at)lists(dot)postgresql(dot)org
Subject: Re: BUG #17985: Inconsistent results of SELECT comparing two CASE WHEN clause
Date: 2023-06-20 20:59:50
Message-ID: 3621303.1687294790@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

I wrote:
> One way to fix it is as attached. I wonder though if this isn't
> telling us that there's a bug in the planner's assignment of
> allParams bits for Hash nodes. The dangerous Param is present
> in the Hash node's hashkeys field, so why isn't the existing
> chgParam test adequate?

Yeah, so looking at that, the planner is just ignoring Hash.hashkeys,
apparently figuring that incorporating Param IDs from HashJoin.hashclauses
into the allParams for the parent HashJoin is sufficient. But as we
see here, it isn't. The attached seems like a better fix.

regards, tom lane

Attachment Content-Type Size
better-fix-for-bug-17985.patch text/x-diff 3.0 KB

In response to

Browse pgsql-bugs by date

  From Date Subject
Next Message Joe Conway 2023-06-20 22:02:48 Re: BUG #17946: LC_MONETARY & DO LANGUAGE plperl - BUG
Previous Message PG Bug reporting form 2023-06-20 20:54:39 BUG #17986: Inconsistent results of SELECT affected by btree index