server/msplanner.py
changeset 442 b1cf7611f8b3
parent 433 95cb5b6e15c6
child 940 15dcdc863965
child 1120 1c24cde4bf72
--- a/server/msplanner.py	Mon Jan 19 17:28:42 2009 +0100
+++ b/server/msplanner.py	Mon Jan 19 18:50:18 2009 +0100
@@ -999,7 +999,9 @@
             step = AggrStep(plan, selection, select, atemptable, temptable)
             step.children = steps
         elif len(steps) > 1:
-            if select.need_intersect:
+            if select.need_intersect or any(select.need_intersect
+                                            for step in steps
+                                            for select in step.union.children):
                 if temptable:
                     step = IntersectFetchStep(plan)
                 else: