Hi, On 2019-11-04 12:18:48 -0500, Tom Lane wrote: > Andrew Gierth <and...@tao11.riddles.org.uk> writes: > > Using 92MB of disk for one integer seems excessive; the reason is clear > > from the explain: > > ... > > so the whole width of the table is being stored in the tuplestore used > > by the windowagg. > > > In create_windowagg_plan, we have: > > > /* > > * WindowAgg can project, so no need to be terribly picky about child > > * tlist, but we do need grouping columns to be available > > */ > > subplan = create_plan_recurse(root, best_path->subpath, CP_LABEL_TLIST); > > > Obviously we _do_ need to be more picky about this; it seems clear that > > using CP_SMALL_TLIST | CP_LABEL_TLIST would be a win in many cases. > > Opinions? > > Seems reasonable to me, do you want to do the honors?
I was briefly wondering if this ought to be backpatched. -0 here, but... Greetings, Andres Freund