On Mon, Jan 15, 2018 at 3:09 AM, Etsuro Fujita <fujita.ets...@lab.ntt.co.jp> wrote: > Yeah, but I don't think the above example is good enough to explain that, > because I think the bar/baz join would produce at most one tuple in an EPQ > recheck since we would have only one EPQ tuple for both bar and baz in that > recheck, and the join is inner. I think such an example would probably be > given e.g., by a modified version of the SQL where we have a full join of > bar and baz, not an inner join.
Hmm, I was thinking that bar and baz wouldn't be constrained to return just one tuple in that case, but I'm wrong: there would just be one tuple per relation in that case. However, that would also be true for a full join, wouldn't it? Regardless of that, the patch fixes the reported problem with very little code change, and somebody can always improve it further later. -- Robert Haas EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company