]> granicus.if.org Git - postgresql/commitdiff
Fix wrong costing of Sort under Gather Merge.
authorRobert Haas <rhaas@postgresql.org>
Wed, 22 Mar 2017 18:42:03 +0000 (14:42 -0400)
committerRobert Haas <rhaas@postgresql.org>
Wed, 22 Mar 2017 18:45:14 +0000 (14:45 -0400)
There's no mechanism for such a sort to become a top-N sort, so we
should pass -1 rather than limit_tuples to cost_sort().

Rushabh Lathia, per a report from Mithun Cy

Discussion: http://postgr.es/m/CAGPqQf1akRcSgC9=6iwx=sEPap9UvPpHJLzg8_N+OuHdb6fL+g@mail.gmail.com

src/backend/optimizer/plan/planner.c

index cbdea1f537850a875d20d6f8a42170dc2734b456..68d74cb4324ca3e172fce96de92034c2ef2e2bf7 100644 (file)
@@ -4416,7 +4416,7 @@ create_ordered_paths(PlannerInfo *root,
                                                                                         ordered_rel,
                                                                                         cheapest_partial_path,
                                                                                         root->sort_pathkeys,
-                                                                                        limit_tuples);
+                                                                                        -1.0);
 
                        total_groups = cheapest_partial_path->rows *
                                cheapest_partial_path->parallel_workers;