Re: Spilling hashed SetOps and aggregates to disk

From: David Fetter <david(at)fetter(dot)org>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: David Rowley <david(dot)rowley(at)2ndquadrant(dot)com>, Andres Freund <andres(at)anarazel(dot)de>, Heikki Linnakangas <hlinnaka(at)iki(dot)fi>, pgsql-hackers <pgsql-hackers(at)postgresql(dot)org>, Jeff Davis <pgsql(at)j-davis(dot)com>
Subject: Re: Spilling hashed SetOps and aggregates to disk
Date: 2018-06-05 17:39:46
Message-ID: 20180605173945.GD10899@fetter.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Tue, Jun 05, 2018 at 01:27:01PM -0400, Tom Lane wrote:
> David Fetter <david(at)fetter(dot)org> writes:
> > On Tue, Jun 05, 2018 at 02:56:23PM +1200, David Rowley wrote:
> >> True. Although not all built in aggregates have those defined.
>
> > Just out of curiosity, which ones don't? As of
> > 3f85c62d9e825eedd1315d249ef1ad793ca78ed4, pg_aggregate has both of
> > those as NOT NULL.
>
> NOT NULL isn't too relevant; that's just protecting the fixed-width
> nature of the catalog rows. What's important is which ones are zero.

Thanks for helping me understand this better.

> # select aggfnoid::regprocedure, aggkind from pg_aggregate where (aggserialfn=0 or aggdeserialfn=0) and aggtranstype = 'internal'::regtype;
> aggfnoid | aggkind
> ------------------------------------------------------+---------
> [snip]
> (19 rows)
>
> Probably the ordered-set/hypothetical ones aren't relevant for this
> issue.
>
> Whether or not we feel like fixing the above "normal" aggs for this,
> the patch would have to not fail on extension aggregates that don't
> support serialization.

Could there be some kind of default serialization with reasonable
properties?

Best,
David.
--
David Fetter <david(at)fetter(dot)org> http://fetter.org/
Phone: +1 415 235 3778

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

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message serge 2018-06-05 17:40:22 RE: Variable-length FunctionCallInfoData
Previous Message Tom Lane 2018-06-05 17:37:12 Re: [PATCH] Trim trailing whitespace in vim and emacs