--- /dev/null
+# from http://archives.postgresql.org/pgsql-bugs/2007-10/msg00180.php
+diff -c -r1.123.2.7 src/backend/optimizer/plan/initsplan.c
+*** src/backend/optimizer/plan/initsplan.c 4 Oct 2007 20:44:55 -0000 1.123.2.7
+--- src/backend/optimizer/plan/initsplan.c 24 Oct 2007 20:34:08 -0000
+***************
+*** 625,630 ****
+--- 625,631 ----
+ * rel in the lower OJ's min_righthand, not its whole syn_righthand.
+ */
+ if (bms_overlap(left_rels, otherinfo->syn_righthand) &&
++ bms_overlap(clause_relids, otherinfo->syn_righthand) &&
+ !bms_overlap(strict_relids, otherinfo->min_righthand))
+ {
+ min_lefthand = bms_add_members(min_lefthand,