Alvaro Herrera wrote: > On Tue, Aug 30, 2005 at 10:23:49AM -0400, Bruce Momjian wrote: > > > > > 2005-03-12 15:25 tgl > > > > > > > > * contrib/intagg/int_aggregate.c, > > > > contrib/intagg/int_aggregate.sql.in, doc/src/sgml/xaggr.sgml, > > > > doc/src/sgml/xfunc.sgml, src/backend/executor/nodeAgg.c, > > > > src/backend/utils/adt/int8.c: Adjust the API for aggregate > > > > function > > > > calls so that a C-coded function can tell whether it is being > > > > used > > > > as an aggregate or not. This allows such a function to avoid > > > > re-pallocing a pass-by-reference transition value; normally it > > > > would be unsafe for a function to scribble on an input, but in > > > > the > > > > aggregate case it's safe to reuse the old transition value. > > > > Make > > > > int8inc() do this. This gets a useful improvement in the speed > > > > of > > > > COUNT(*), at least on narrow tables (it seems to be swamped by > > > > I/O > > > > when the table rows are wide). Per a discussion in early > > > > December > > > > with Neil Conway. I also fixed int_aggregate.c to check this, > > > > thereby turning it into something approaching a supportable > > > > technique instead of being a crude hack. > > > > I don't usually document internal API changes in the release notes. > > Should I? > > Doesn't this potentially affect user-defined aggregates?
I read it as something that _could_ be used by user-defined aggregates, but not something that would require a changes to a user-defined aggregate. -- Bruce Momjian | http://candle.pha.pa.us pgman@candle.pha.pa.us | (610) 359-1001 + If your life is a hard drive, | 13 Roberts Road + Christ can be your backup. | Newtown Square, Pennsylvania 19073 ---------------------------(end of broadcast)--------------------------- TIP 3: Have you checked our extensive FAQ? http://www.postgresql.org/docs/faq