Adjust reltarget assignment for UPPERREL_PARTIAL_DISTINCT rel
David Rowley <drowley@postgresql.org>
Adjust reltarget assignment for UPPERREL_PARTIAL_DISTINCT rel A comment in grouping_planner() claimed that the PlannerInfo upper_targets array was not used in core code. However, the code that generated the paths for the UPPERREL_PARTIAL_DISTINCT rel made that comment untrue. Here we adjust the create_distinct_paths() function signature to pass down the PathTarget the same as is done for create_grouping_paths(), thus making the aforementioned comment true again. In passing adjust the order of the upper_targets[] assignments. These seem to be following the reverse enum order apart from UPPERREL_PARTIAL_DISTINCT. Also, update the header comment for generate_gather_paths() to mention the function is also used to create gather paths for partial distinct paths. Author: Richard Guo, David Rowley Discussion: https://postgr.es/m/CAMbWs48u9VoVOouJsys1qOaC9WVGVmBa+wT1dx8KvxF5GPzezA@mail.gmail.com
Files
| Path | Change | +/− |
|---|---|---|
| src/backend/optimizer/path/allpaths.c | modified | +4 −4 |
| src/backend/optimizer/plan/planner.c | modified | +14 −8 |
Discussion
- An improvement on parallel DISTINCT 8 messages · 2023-12-26 → 2024-02-07