Thread: set_rel_pathlist function unnecessary params.
I happened to notice that `set_rel_pathlist` params, RelOptInfo *rel and RangeTblEntry *rte are unnecessary, because upon all usages, `rte=root->simple_rte_array[rti]` and `rel=root->simple_rel_array[rti]` holds. What's the point of providing the same information 3 times? Is it kept like that for extension backward compatibility. So, I propose to refactor this a little bit. Am I missing something? -- Best regards, Kirill Reshke
Kirill Reshke <reshkekirill@gmail.com> writes: > I happened to notice that `set_rel_pathlist` params, RelOptInfo *rel > and RangeTblEntry *rte are > unnecessary, because upon all usages, > `rte=root->simple_rte_array[rti]` and > `rel=root->simple_rel_array[rti]` holds. What's the point of providing > the same information 3 times? To avoid having to re-fetch it from those arrays? > So, I propose to refactor this a little bit. > Am I missing something? I'm -1 on changing this. It'd provide no detectable benefit while creating back-patching hazards in this code. regards, tom lane