OSDN Git Service
Refactor hint application mechamism
Before we have the new hook set_rel_pathlist_hook, plan enforcment is
performed in two steps, one works only for queries with one relation,
the other works only for joins. Now they are performed once and at
once in set_rel_pathlist_hook. As a byproduct of this refactoring,
index restriction no longer runs for indexes on constraint-excluded
relations and expected/ut-S.out changed a bit.
The major changes by this patch are the followings.
- Remove hook to get_relation_info_hook:
The function for the hook pg_hint_plan_get_relation_info is removed.
- pg_hint_plan_join_search no longer calls rebuild_scan_path. The
function and a copied function set_plain_rel_pathlist are removed.
- delete_indexes has been renamed to restrict_indexes, which
represents the functionality clearer. And the function was
refactored main for readablity.
- Added several regtests for parallel.