Hello,
We have a couple explores that are set up so additional views are joined to the base view and also conditionally joined to each other in the others are included in the query.
They look something like the following:
explore: my_explore {
view_name: base_view
join: view_a {
type: left_outer
relationship: one_to_many
sql_on: ${base_view.view_a_id} = ${view_a.view_a_id};;
}
join: view_b {
type: left_outer
relationship: one_to_many
sql_on: ${base_view.view_b_id} = ${view_b.view_b_id}
{% if view_a._in_query %} and view_a.user_id = view_b.user_id
{% endif %};;
}
A week ago, you could include a dimension from `view_b` in the explore and the SQL generated by looker wouldn't include `view_a` at all.
Now, even if there are no dimensions from `view_a` included in the explore, looker is joining in `view_a` regardless. The liquid logic seems to be working and the join condition on `user_id` isn't included unless a `view_a` dimension is included, but that's not preventing `view_a` from being joined in regardless.
Was there a recent change to how this works that would have broken these explores? Has anyone else experienced this issue?