From: Tom Lane Date: Tue, 6 Dec 2005 16:59:22 +0000 (+0000) Subject: In a nestloop inner indexscan, it's OK to use pushed-down baserestrictinfo X-Git-Url: http://git.postgresql.org/gitweb/static/gitweb.js?a=commitdiff_plain;h=afa957a2cc05e3e1eaeff251730454232f5272d1;p=users%2Fbernd%2Fpostgres.git In a nestloop inner indexscan, it's OK to use pushed-down baserestrictinfo clauses even if it's an outer join. This is a corner case since such clauses could only arise from weird OUTER JOIN ON conditions, but worth fixing. Per example from Ron at cheapcomplexdevices.com. --- diff --git a/src/backend/optimizer/path/indxpath.c b/src/backend/optimizer/path/indxpath.c index 4b56cc13d4..77518f6c48 100644 --- a/src/backend/optimizer/path/indxpath.c +++ b/src/backend/optimizer/path/indxpath.c @@ -666,10 +666,6 @@ group_clauses_by_indexkey_for_join(Query *root, { RestrictInfo *rinfo = (RestrictInfo *) lfirst(i); - /* Can't use pushed-down clauses in outer join */ - if (isouterjoin && rinfo->ispusheddown) - continue; - if (match_clause_to_indexcol(rel, index, indexcol,