Sent from my iPad
> On 24-Dec-2013, at 2:50, Tom Lane <tgl@sss.pgh.pa.us> wrote:
>
> Atri Sharma <atri.jiit@gmail.com> writes:
>> Please find attached the latest patch for WITHIN GROUP. This patch is
>> after fixing the merge conflicts.
>
> I've committed this after significant editorialization --- most notably,
> I pushed control of the sort step into the aggregate support functions.
> I didn't like the way nodeAgg.c had been hacked up to do it the other way.
> There's a couple hundred lines of code handling that in orderedsetaggs.c,
> which is more or less comparable to the amount of code that didn't get
> added to nodeAgg.c, so I think the argument that the original approach
> avoided code bloat is bogus.
>
> The main reason I pushed all the new aggregates into a single file
> (orderedsetaggs.c) was so they could share a private typedef for the
> transition state value. It's possible that we should expose that
> struct so that third-party aggregate functions could leverage the
> existing transition-function infrastructure instead of having to
> copy-and-paste it. I wasn't sure where to put it though --- maybe
> a new include file would be needed. Anyway I left the point for
> future discussion.
>
> regards, tom lane
Thank you!