Hello, http://www.postgresql.org/docs/devel/static/functions-aggregate.html
The documentation says that return type of sum(expression) is... bigint for smallint or int arguments, numeric for bigint arguments, double precision for floating-point arguments, otherwise the same as the argument data type Does it expect sum(float4) returns float8, doesn't it? On the other hand, catalog definition seems to me it returns float4. postgres=# select * from pg_aggregate where aggfnoid in (2110, 2111); aggfnoid | aggkind | aggnumdirectargs | aggtransfn | aggfinalfn | aggmtra nsfn | aggminvtransfn | aggmfinalfn | aggfinalextra | aggmfinalextra | aggsortop | aggtranstype | aggtransspace | aggmtranstype | aggmtransspace | agginitval | aggminitval ----------------+---------+------------------+------------+------------+-------- -----+----------------+-------------+---------------+----------------+---------- -+--------------+---------------+---------------+----------------+------------+- ------------ pg_catalog.sum | n | 0 | float4pl | - | - | - | - | f | f | 0 | 700 | 0 | 0 | 0 | | pg_catalog.sum | n | 0 | float8pl | - | - | - | - | f | f | 0 | 701 | 0 | 0 | 0 | | (2 rows) Which one shall be fixed? Thanks, -- NEC OSS Promotion Center / PG-Strom Project KaiGai Kohei <kai...@ak.jp.nec.com> -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers