Re: FILTER for aggregates [was Re: Department of Redundancy Department: makeNode(FuncCall) division]

From: David Fetter <david(at)fetter(dot)org>
To: PG Hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: FILTER for aggregates [was Re: Department of Redundancy Department: makeNode(FuncCall) division]
Date: 2013-06-17 05:36:55
Message-ID: 20130617053655.GB19441@fetter.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Sun, Apr 28, 2013 at 01:29:41PM -0700, David Fetter wrote:
> On Tue, Feb 26, 2013 at 01:09:30PM -0800, David Fetter wrote:
> > On Wed, Feb 13, 2013 at 06:45:31AM -0800, David Fetter wrote:
> > > On Sat, Feb 09, 2013 at 11:59:22PM -0800, David Fetter wrote:
> > > > Folks,
> > > >
> > > > Per suggestions and lots of help from Andrew Gierth, please find
> > > > attached a patch to clean up the call sites for FuncCall nodes, which
> > > > I'd like to expand centrally rather than in each of the 37 (or 38, but
> > > > I only redid 37) places where it's called. The remaining one is in
> > > > src/backend/nodes/copyfuncs.c, which has to be modified for any
> > > > changes in the that struct anyhow.
> > > >
> > > > The immediate purpose is two-fold: to reduce some redundancies, which
> > > > I believe is worth doing in and of itself, and to prepare for adding
> > > > FILTER on aggregates from the spec, and possibly other things in
> > > > the <aggregate function> part of the spec.
> > > >
> > > > Cheers,
> > > > David.
> > >
> > > Folks,
> > >
> > > Please find attached two versions of a patch which provides optional
> > > FILTER clause for aggregates (T612, "Advanced OLAP operations").
> > >
> > > The first is intended to be applied on top of the previous patch, the
> > > second without it. The first is, I believe, clearer in what it's
> > > doing. Rather than simply mechanically visiting every place a
> > > function call might be constructed, it visits a central one to change
> > > the default, then goes only to the places where it's relevant.
> > >
> > > The patches are both early WIP as they contain no docs or regression
> > > tests yet.
> >
> > Docs and regression tests added, makeFuncArgs approached dropped for
> > now, will re-visit later.
>
> Regression tests added to reflect bug fixes in COLLATE.

Rebased vs. master.

Cheers,
David.
--
David Fetter <david(at)fetter(dot)org> http://fetter.org/
Phone: +1 415 235 3778 AIM: dfetter666 Yahoo!: dfetter
Skype: davidfetter XMPP: david(dot)fetter(at)gmail(dot)com
iCal: webcal://www.tripit.com/feed/ical/people/david74/tripit.ics

Remember to vote!
Consider donating to Postgres: http://www.postgresql.org/about/donate

Attachment Content-Type Size
filter_005.diff text/plain 46.8 KB

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message David Fetter 2013-06-17 05:43:04 Re: Department of Redundancy Department: makeNode(FuncCall) division
Previous Message David Fetter 2013-06-17 05:33:44 Re: Patch: UNNEST (and other functions) WITH ORDINALITY