HashAgg: before spilling tuples, set unneeded columns to NULL. This is a replacement for 4cad2534. Instead of projecting all tuples going into a HashAgg, only remove unnecessary attributes when actually spilling. This avoids the regression for the in-memory case.
Discussion: https://postgr.es/m/a2fb7dfeb4f50aa0a123e42151ee3013933cb802.camel%40j-davis.com Backpatch-through: 13 Branch ------ REL_13_STABLE Details ------- https://git.postgresql.org/pg/commitdiff/d8a7ce245095e3a70a2ad738c17be95593f68996 Modified Files -------------- src/backend/executor/nodeAgg.c | 123 ++++++++++++++++++++++++++++++----------- src/include/nodes/execnodes.h | 8 ++- 2 files changed, 96 insertions(+), 35 deletions(-)
