Fix another case.

This commit is contained in:
Nikolai Kochetov 2024-07-02 18:02:57 +00:00
parent 3149e51e92
commit 9be404c9c7
2 changed files with 2 additions and 2 deletions

View File

@ -1383,11 +1383,11 @@ JoinTreeQueryPlan buildQueryPlanForJoinNode(const QueryTreeNodePtr & join_table_
if (join_clauses_and_actions.mixed_join_expressions_actions) if (join_clauses_and_actions.mixed_join_expressions_actions)
{ {
left_join_tree_query_plan.actions_dags.push_back(join_clauses_and_actions.mixed_join_expressions_actions.get());
ExpressionActionsPtr & mixed_join_expression = table_join->getMixedJoinExpression(); ExpressionActionsPtr & mixed_join_expression = table_join->getMixedJoinExpression();
mixed_join_expression = std::make_shared<ExpressionActions>( mixed_join_expression = std::make_shared<ExpressionActions>(
std::move(join_clauses_and_actions.mixed_join_expressions_actions), std::move(join_clauses_and_actions.mixed_join_expressions_actions),
ExpressionActionsSettings::fromContext(planner_context->getQueryContext())); ExpressionActionsSettings::fromContext(planner_context->getQueryContext()));
left_join_tree_query_plan.actions_dags.push_back(&mixed_join_expression->getActionsDAG());
} }
} }
else if (join_node.isUsingJoinExpression()) else if (join_node.isUsingJoinExpression())

View File

@ -1240,7 +1240,7 @@ ReadFromMerge::RowPolicyData::RowPolicyData(RowPolicyFilterPtr row_policy_filter
auto expression_analyzer = ExpressionAnalyzer{expr, syntax_result, local_context}; auto expression_analyzer = ExpressionAnalyzer{expr, syntax_result, local_context};
actions_dag = expression_analyzer.getActionsDAG(false /* add_aliases */, false /* project_result */); actions_dag = expression_analyzer.getActionsDAG(false /* add_aliases */, false /* project_result */);
filter_actions = std::make_shared<ExpressionActions>(std::move(actions_dag), filter_actions = std::make_shared<ExpressionActions>(ActionsDAG::clone(actions_dag),
ExpressionActionsSettings::fromContext(local_context, CompileExpressions::yes)); ExpressionActionsSettings::fromContext(local_context, CompileExpressions::yes));
const auto & required_columns = filter_actions->getRequiredColumnsWithTypes(); const auto & required_columns = filter_actions->getRequiredColumnsWithTypes();
const auto & sample_block_columns = filter_actions->getSampleBlock().getNamesAndTypesList(); const auto & sample_block_columns = filter_actions->getSampleBlock().getNamesAndTypesList();