On Tue, Sep 6, 2022 at 1:18 AM Tom Lane <t...@sss.pgh.pa.us> wrote: > Zhang Mingli <zmlpostg...@gmail.com> writes: > > Macro exec_subplan_get_plan is not used anymore. > > Attach a patch to remove it. > > Hm, I wonder why it's not used anymore. Maybe we no longer need > that list at all? If we do, should use of the macro be > re-introduced in the accessors?
Seems nowadays no one fetches the Plan from PlannedStmt->subplans with a certain plan_id any more. Previously back in eab6b8b2 where this macro was introduced, it was used in explain_outNode and ExecInitSubPlan. I find a similar macro, planner_subplan_get_plan, who fetches the Plan from glob->subplans. We can use it in the codes where needed. For example, in the new function SS_make_multiexprs_unique. /* Found one, get the associated subplan */ - plan = (Plan *) list_nth(root->glob->subplans, splan->plan_id - 1); + plan = planner_subplan_get_plan(root, splan); Thanks Richard