Split create_grouping_paths into degenerate and non-degenerate cases. There's no functional change here, or at least I hope there isn't, just code rearrangement. The rearrangement is motivated by partition-wise aggregate, which doesn't need to consider the degenerate case but wants to reuse the logic for the ordinary case.
Based loosely on a patch from Ashutosh Bapat and Jeevan Chalke, but I whacked it around pretty heavily. The larger patch series of which this patch is a part was also reviewed and tested by Antonin Houska, Rajkumar Raghuwanshi, David Rowley, Dilip Kumar, Konstantin Knizhnik, Pascal Legrand, Rafia Sabih, and me. Discussion: http://postgr.es/m/cafjfprewpqcmvkwvq6qrrjmbmdpn0czvrrzjd8uvnccza3o...@mail.gmail.com Branch ------ master Details ------- https://git.postgresql.org/pg/commitdiff/1466bcfa4a83ba88b55cfcebb99080800627613a Modified Files -------------- src/backend/optimizer/plan/planner.c | 186 +++++++++++++++++++++-------------- 1 file changed, 114 insertions(+), 72 deletions(-)