"Matt Clark" <matt(at)ymogen(dot)net> writes:
> Actually, referring down to later parts of this thread, why can't this
> optimisation be performed internally for built-in types? I understand the
> issue with aggregates over user-defined types, but surely optimising max()
> for int4, text, etc is safe and easy?
I can't see that the datatype involved has anything to do with it.
None of the issues that come up in making the planner do this are
datatype-specific. You could possibly avoid adding some columns
to pg_aggregate if you instead hard-wired the equivalent knowledge
(for builtin types only) into some code somewhere, but a patch that
approached it that way would be rejected as unmaintainable.
regards, tom lane