and fixes the incorrect behaviour. Additionally, it renames variables to make similar errors more apparent in the future.
- if (!innerrel_is_unique_ext(root, joinrelids, inner->relids, - outer, JOIN_INNER, selfjoinquals, + if (!innerrel_is_unique_ext(root, joinrelids, rrel->relids, + krel, JOIN_INNER, selfjoinquals,
I'm not convinced this is an improvement from someone just coming in to this part of the code, especially given (for example) the comment right above it:
* Determine if the inner table can duplicate outer rows. We must * bypass the unique rel cache here since we're possibly using a