• R/O
  • HTTP
  • SSH
  • HTTPS

pg_hint_plan: Commit

firtst release


Commit MetaInfo

Revision26d0decb8dbb4b75595baafcaca6cab48c0da1c0 (tree)
Time2020-02-14 16:22:20
AuthorKyotaro Horiguchi <horikyota.ntt@gmai...>
CommiterKyotaro Horiguchi

Log Message

Don't leave partial paths when no parallel hint is specified

pg_hint_plan_set_rel_pathlist left partial paths if no parallel hint
is specified, but that behavior leaves indexscan partial paths on
restricted indexes. Remove all partial paths unconditionally.

Change Summary

Incremental Difference

--- a/pg_hint_plan.c
+++ b/pg_hint_plan.c
@@ -4557,12 +4557,8 @@ pg_hint_plan_set_rel_pathlist(PlannerInfo * root, RelOptInfo *rel,
45574557 list_free_deep(rel->pathlist);
45584558 rel->pathlist = NIL;
45594559
4560- /* Remove all the partial paths if Parallel hint is specfied */
4561- if ((found_hints & HINT_BM_PARALLEL) && rel->partial_pathlist)
4562- {
4563- list_free_deep(rel->partial_pathlist);
4564- rel->partial_pathlist = NIL;
4565- }
4560+ list_free_deep(rel->partial_pathlist);
4561+ rel->partial_pathlist = NIL;
45664562
45674563 /* Regenerate paths with the current enforcement */
45684564 set_plain_rel_pathlist(root, rel, rte);
Show on old repository browser