Jeff Davis <[EMAIL PROTECTED]> writes: > On 8.1 this returns 1 record. On 8.2 this returns 100000. It appears to > be applying the filter too soon, and then it does an outer join which > violates the WHERE.
AFAICS the outer join reordering is perfectly legal --- the problem is that the WHERE condition is being allowed to bubble down too far. I can't reproduce it with less than four tables, so it's a pretty weird corner case. Apparently there's something wrong with distribute_qual_to_rels' logic for determining qual placement, but I'm not sure what yet ... regards, tom lane ---------------------------(end of broadcast)--------------------------- TIP 6: explain analyze is your friend