Received: from localhost (unknown [200.46.208.211]) by mail.postgresql.org (Postfix) with ESMTP id 1DE336342BF for ; Thu, 26 Mar 2009 14:15:43 -0300 (ADT) Received: from mail.postgresql.org ([200.46.204.86]) by localhost (mx1.hub.org [200.46.208.211]) (amavisd-maia, port 10024) with ESMTP id 84384-10 for ; Thu, 26 Mar 2009 14:15:37 -0300 (ADT) Received: from cvs.postgresql.org (cvs.postgresql.org [217.196.146.206]) by mail.postgresql.org (Postfix) with ESMTP id C92746337BB for ; Thu, 26 Mar 2009 14:15:36 -0300 (ADT) Received: by cvs.postgresql.org (Postfix, from userid 1007) id 6B9BF754ADE; Thu, 26 Mar 2009 17:15:35 +0000 (UTC) MIME-Version: 1.0 To: pgsql-committers@postgresql.org Subject: pgsql: If we expect a hash join to be performed in multiple batches, X-Mailer: activitymail 1.24, http://search.cpan.org/dist/activitymail/ Content-Type: text/plain Message-Id: <20090326171535.6B9BF754ADE@cvs.postgresql.org> Date: Thu, 26 Mar 2009 17:15:35 +0000 (UTC) From: tgl@postgresql.org (Tom Lane) X-Virus-Scanned: Maia Mailguard 1.0.1 X-Spam-Status: No, hits=0 tagged_above=0 required=5 tests=none X-Spam-Level: X-Archive-Number: 200903/201 X-Sequence-Number: 36421 Log Message: ----------- If we expect a hash join to be performed in multiple batches, suppress "physical tlist" optimization on the outer relation (ie, force a projection step to occur in its scan). This avoids storing useless column values when the outer relation's tuples are written to temporary batch files. Modified version of a patch by Michael Henderson and Ramon Lawrence. Modified Files: -------------- pgsql/src/backend/nodes: outfuncs.c (r1.355 -> r1.356) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/nodes/outfuncs.c?r1=1.355&r2=1.356) pgsql/src/backend/optimizer/path: costsize.c (r1.205 -> r1.206) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/path/costsize.c?r1=1.205&r2=1.206) pgsql/src/backend/optimizer/plan: createplan.c (r1.256 -> r1.257) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/plan/createplan.c?r1=1.256&r2=1.257) pgsql/src/backend/optimizer/util: pathnode.c (r1.150 -> r1.151) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/util/pathnode.c?r1=1.150&r2=1.151) pgsql/src/include/nodes: relation.h (r1.170 -> r1.171) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/nodes/relation.h?r1=1.170&r2=1.171)