Re: constraint exclusion and nulls in IN (..) clause

Tom Lane <tgl@sss.pgh.pa.us>

From: Tom Lane <tgl@sss.pgh.pa.us>
To: emre@hasegeli.com
Cc: Amit Langote <Langote_Amit_f8@lab.ntt.co.jp>, Ashutosh Bapat <ashutosh.bapat@enterprisedb.com>, Pg Hackers <pgsql-hackers@postgresql.org>
Date: 2018-03-21T14:00:41Z
Lists: pgsql-hackers
Emre Hasegeli <emre@hasegeli.com> writes:
> I am not sure if we are covering the case when clause_const and
> pred_const are both NULL.  In this case, we should be able to return
> true only by checking op_strict(pred_op) or maybe even without
> checking that.  Am I mistaken?

Yeah, that's there.  We need both operators to be strict, I think;
otherwise we can't really assume anything about what they'd return
for NULL inputs.  But if they are, we have NULL => NULL which is
valid for all proof cases.

			regards, tom lane


Commits

  1. Improve predtest.c's handling of cases with NULL-constant inputs.