Dean Rasheed <dean.a.rasheed@gmail.com> writes:
> On 11 October 2010 15:03, Tom Lane <tgl@sss.pgh.pa.us> wrote:
>> Reflecting on it, I think it'd be best to allow an agg to
>> provide an estimation function that'd be told the input data type and
>> expected number of rows --- even on a per-aggregate basis, a constant
>> estimate just isn't good enough.
> How good will that estimate of the number of rows be though?
It can't possibly be any worse than a hard-wired constant ;-)
> If they're coming from a SRF it could be a huge under-estimate, and you'd
> still risk eating all the memory, if you allowed a hash aggregate.
If, for a particular aggregate, you're too chicken to ever allow hash
aggregation, you could just return a very large number from the
estimation hook function. I doubt that's a very useful behavior in the
majority of cases though.
regards, tom lane