[HACKERS] teaching Var about NOT NULL

2014-06-01 Thread David Rowley
Hi, While hacking away at implementing join removal support for ANTI-JOINs I realised that I couldn't just replace the join with a WHERE false condition... Let me explain... With a query such as: SELECT * FROM a WHERE NOT EXISTS(SELECT 1 FROM b WHERE a.b_id = b.id); Where a.b_id has a foreign

Re: [HACKERS] teaching Var about NOT NULL

2014-06-01 Thread Tom Lane
David Rowley dgrowle...@gmail.com writes: I quickly put together the attached patch which adds a knownnotnull bool field to Var which we can set to true when we're completely sure that the Var cannot contain any NULL values. This is utterly the wrong way to go about it. How will you update