Do not translate dummy SpecialJoinInfos for child joins This teaches build_child_join_sjinfo() to create the dummy SpecialJoinInfos (those created for inner joins) directly for a given child join, skipping the unnecessary overhead of translating the parent joinrel's SpecialJoinInfo.
To that end, this commit moves the code to initialize the dummy SpecialJoinInfos to a new function named init_dummy_sjinfo() and changes the few existing sites that have this code and build_child_join_sjinfo() to call this new function. Author: Ashutosh Bapat <ashutosh.bapat....@gmail.com> Reviewed-by: Richard Guo <guofengli...@gmail.com> Reviewed-by: Amit Langote <amitlangot...@gmail.com> Reviewed-by: Andrey Lepikhov <a.lepik...@postgrespro.ru> Reviewed-by: Tomas Vondra <tomas.von...@enterprisedb.com> Discussion: https://postgr.es/m/caexhw5thqef3asvqvffcghygpfpy7o3xnvhhwbgbjfmrh8k...@mail.gmail.com Branch ------ master Details ------- https://git.postgresql.org/pg/commitdiff/6190d828cd25ae20c0a8548765a0e1b880f1f66d Modified Files -------------- src/backend/optimizer/path/costsize.c | 37 ++-------------------- src/backend/optimizer/path/joinrels.c | 58 +++++++++++++++++++++++++---------- src/include/optimizer/paths.h | 2 ++ 3 files changed, 46 insertions(+), 51 deletions(-)