Log Message:
-----------
Apply the "nodeAgg" optimization to more of the builtin transition
functions. This patch optimizes int2_sum(), int4_sum(), float4_accum()
and float8_accum() to avoid needing to copy the transition function's
state for each input tuple of the aggregate. In an extreme case
(e.g. SELECT sum(int2_col) FROM table where table has a single column),
it improves performance by about 20%. For more complex queries or tables
with wider rows, the relative performance improvement will not be as
significant.
Modified Files:
--------------
pgsql/src/backend/utils/adt:
float.c (r1.113 -> r1.114)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/adt/float.c.diff?r1=1.113&r2=1.114)
numeric.c (r1.82 -> r1.83)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/adt/numeric.c.diff?r1=1.82&r2=1.83)
pgsql-committers by date
| Next: | From: Neil Conway | Date: 2005-04-07 01:51:42 |
| Subject: pgsql: Add a "USING" clause to DELETE, which is equivalent to the FROM |
| Previous: | From: Tom Lane | Date: 2005-04-06 20:13:49 |
| Subject: pgsql: Remove test for NULL node in ExecProcNode(). |