Heikki Linnakangas <hlinnakan...@vmware.com> writes: > I propose that we reimplement sum(bigint) in a more efficient way: For > the internal state, let's use an int8 and a numeric overflow field. The > transition function adds to the int8 variable, and checks for overflow. > On overflow, increment the numeric field by one. In the final function, > multiply the numeric by 2^64, and add the residual int8 value.
It'd probably be sufficient to handle it as two int64 fields (handmade 128-bit arithmetic, or maybe even not so handmade if that ever gets reasonably common among C compilers). You're assuming the final output is still numeric, right? regards, tom lane -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers