[[ Oops, still not used to gmail. Accidentally posted this straight to Tom and not the list]] > There are a bunch of special cases where it can't do that, though. > Look into src/backend/optimizer/path/allpaths.c, particularly > subquery_is_pushdown_safe: My case probably fits the 'special case' description. Not all the columns in each subquery matched up, so there were NULL::text placeholders in some spots in the SELECT. In the case where performance got bad, one of those columns was included in the application's WHERE clause. That's a good enough explanation for me. I'll spare you the gory details of my tables, unless a developer wants to have a look at it off-list. Jeff ---------------------------(end of broadcast)--------------------------- TIP 5: don't forget to increase your free space map settings