Simplify partial path generation in GROUP BY/ORDER BY
authorDavid Rowley <drowley@postgresql.org>
Tue, 30 Jan 2024 21:10:59 +0000 (10:10 +1300)
committerDavid Rowley <drowley@postgresql.org>
Tue, 30 Jan 2024 21:10:59 +0000 (10:10 +1300)
commit8ee9c250875157d42f7ed53508e239d23ce514fb
tree836e8a084132aaabd6732ebd921333557de861be
parent7b745d85b80d4492c4df8d9769592c7aad1f63d2
Simplify partial path generation in GROUP BY/ORDER BY

Here we consolidate the generation of partial sort and partial incremental
sort paths in a similar way to what was done in 4a29eabd1.  Since the cost
penalty for incremental sort was removed by that commit, there's no
point in creating a sort path on the cheapest partial path if an
incremental sort could be done instead.

This has the added benefit of reducing the amount of code required to
build these paths.

Author: Richard Guo
Reviewed-by: Etsuro Fujita, Shubham Khanna, David Rowley
Discussion: https://postgr.es/m/CAMbWs49PaKxBZU9cN7k3DKB7id+YfGfOfS9H_Fo5tkqPMt=fDg@mail.gmail.com
src/backend/optimizer/plan/planner.c
src/test/regress/expected/select_parallel.out
src/test/regress/sql/select_parallel.sql