1
0
mirror of https://github.com/postgres/postgres.git synced 2026-10-23 13:29:09 +03:00

Fire create_upper_paths_hook for UPPERREL_PARTIAL_GROUP_AGG

create_partial_grouping_paths() called the FDW callback
GetForeignUpperPaths for UPPERREL_PARTIAL_GROUP_AGG, but never the
general-purpose create_upper_paths_hook that non-FDW extensions rely
on.  create_partial_distinct_paths() already fires both for
UPPERREL_PARTIAL_DISTINCT.

Add the missing call right next to GetForeignUpperPaths, so an
extension can add partial-aggregate paths here too, before the caller
gathers them and builds a Finalize Aggregate on top.

Reviewed-by: Bryan Green <dbryan.green@gmail.com>
Reviewed-by: Himanshu Upadhyaya <upadhyaya.himanshu@gmail.com>
Reviewed-by: Shihao Zhong <zhong950419@gmail.com>
Discussion: https://postgr.es/m/6fc72a7d-9f52-4a72-9adf-1912da255605@dunslane.net
This commit is contained in:
Andrew Dunstan
2026-05-09 14:57:09 -04:00
parent a5447a2dea
commit e8a82ddeaf

View File

@@ -7976,6 +7976,12 @@ create_partial_grouping_paths(PlannerInfo *root,
extra);
}
/* Let extensions possibly add some more partial paths */
if (create_upper_paths_hook)
(*create_upper_paths_hook) (root, UPPERREL_PARTIAL_GROUP_AGG,
input_rel, partially_grouped_rel,
extra);
return partially_grouped_rel;
}