Re: Disk-based hash aggregate's cost model
Jeff Davis <pgsql@j-davis.com>
From: Jeff Davis <pgsql@j-davis.com>
To: Tomas Vondra <tomas.vondra@2ndquadrant.com>
Cc: Peter Geoghegan <pg@bowt.ie>, PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2020-09-04T19:33:24Z
Lists: pgsql-hackers
On Fri, 2020-09-04 at 21:01 +0200, Tomas Vondra wrote: > Wouldn't it be enough to just use a slot with smaller tuple > descriptor? > All we'd need to do is creating the descriptor in ExecInitAgg after > calling find_hash_columns, and using it for rslot/wslot, and then > "mapping" the attributes in hashagg_spill_tuple (which already almost > does that, to the extra cost should be 0) and when reading the > spilled > tuples. That's a good point, it's probably not much code to make it work. > So I'm not quite buying the argument that this would make > measurable difference ... I meant "projection of all input tuples" (i.e. CP_SMALL_TLIST) has a cost. If we project only at spill time, it should be fine. Regards, Jeff Davis
Commits
-
Adjust cost model for HashAgg that spills to disk.
- b61d048e0d48 13.0 landed
- a547e6867527 14.0 landed