On Thu, 29 Jun 2023 at 08:53, Richard Guo <guofengli...@gmail.com> wrote: > > While working on the invalid parameterized join path issue [1], I > noticed that we can simplify the codes for checking parameterized > partial paths in try_partial_hashjoin/mergejoin_path, with the help of > macro PATH_REQ_OUTER. > > - if (inner_path->param_info != NULL) > - { > - Relids inner_paramrels = > inner_path->param_info->ppi_req_outer; > - > - if (!bms_is_empty(inner_paramrels)) > - return; > - } > + if (!bms_is_empty(PATH_REQ_OUTER(inner_path))) > + return; > > Also there is a comment there that is not correct. > > * If the inner path is parameterized, the parameterization must be fully > * satisfied by the proposed outer path. > > This is true for nestloop but not for hashjoin/mergejoin. > > Besides, I wonder if it'd be better that we verify that the outer input > path for a partial join path should not have any parameterization > dependency. > > Attached is a patch for all these changes.
I'm seeing that there has been no activity in this thread for nearly 7 months, I'm planning to close this in the current commitfest unless someone is planning to take it forward. Regards, Vignesh