I dug into the various reports of NUMERIC/DECIMAL bugs today,
and found that there were several different bugs lurking there.
If you are interested in having fixes to these problems before 7.0
comes out, see the patches I posted on the pgsql-patches list.
Problems fixed:
* Platform-dependent failure of NUMERIC AVG() function.
* Bogus rounding/overflow check would cause zero to be rejected
in a field that has only fraction digits, e.g. DECIMAL(4,4).
* numeric_out's rounding code could actually cause a coredump in
pathological cases (hasn't been reported from the field, though).
* NUMERIC basically didn't work at all in PL/PGSQL functions; on most
platforms you'd get bogus "overflow" errors.
regards, tom lane