From: | Hadi Moshayedi <hadi(at)moshayedi(dot)net> |
---|---|
To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
Cc: | Kevin Grittner <kgrittn(at)ymail(dot)com>, Pavel Stehule <pavel(dot)stehule(at)gmail(dot)com>, pgsql-hackers <pgsql-hackers(at)postgresql(dot)org>, "mark(dot)kirkwood(at)catalyst(dot)net(dot)nz" <mark(dot)kirkwood(at)catalyst(dot)net(dot)nz> |
Subject: | Re: Improving avg performance for numeric |
Date: | 2013-03-20 16:44:54 |
Message-ID: | CAK=1=Wpn=jc3kULtiXXLi6D5nR4P8DvnGb90kXRRdhgMiObu9g@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Hi Tom,
Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:
> After thinking about that for awhile: if we pursue this type of
> optimization, what would probably be appropriate is to add an aggregate
> property (stored in pg_aggregate) that allows direct specification of
> the size that the planner should assume for the aggregate's transition
> value. We were getting away with a hardwired assumption of 8K for
> "internal" because the existing aggregates that used that transtype all
> had similar properties, but it was always really a band-aid not a proper
> solution. A per-aggregate override could be useful in other cases too.
Cool.
I created a patch which adds an aggregate property to pg_aggregate, so
the transition space is can be overridden. This patch doesn't contain
the numeric optimizations. It uses "0" (meaning not-set) for all
existing aggregates.
I manual-tested it a bit, by changing this value for aggregates and
observing the changes in plan. I also updated some docs and pg_dump.
Does this look like something along the lines of what you meant?
Thanks,
-- Hadi
Attachment | Content-Type | Size |
---|---|---|
aggregate-transspace.patch | application/octet-stream | 29.3 KB |
From | Date | Subject | |
---|---|---|---|
Next Message | Daniel Farina | 2013-03-20 16:52:54 | Re: postgres_fdw vs data formatting GUCs (was Re: [v9.3] writable foreign tables) |
Previous Message | Daniele Varrazzo | 2013-03-20 16:37:16 | Re: A few string fixed |