On 12.11.2012 12:07, Kyotaro HORIGUCHI wrote:
> Hello, This is new version of identity projection patch.
>
> Reverted projectionInfo and ExecBuildProjectionInfo. Identity
> projection is recognized directly in ExecGroup, ExecResult, and
> ExecWindowAgg. nodeAgg is reverted because I couldn't make it
> sane..
>
> The following is the result of performance test posted before in
> order to show the source of the gain.
Hmm, this reminds me of the discussion on removing useless Limit nodes:
http://archives.postgresql.org/pgsql-performance/2012-12/msg00127.php.
The optimization on Group, WindowAgg and Agg nodes doesn't seem that
important, the cost of doing the aggregation/grouping is likely
overwhelming the projection cost, and usually you do projection in
grouping/aggregation anyway. But makes sense for Result.
For Result, I think you should aim to remove the useless Result node
from the plan altogether. And do the same for useless Limit nodes.
- Heikki