@@ -1837,19 +1837,27 @@ JoinTreeQueryPlan buildQueryPlanForJoinNodeLegacy(
18371837 auto & inner_columns_list = join_node_using_column_node.getExpressionOrThrow ()->as <ListNode &>();
18381838
18391839 auto & left_inner_column_node = inner_columns_list.getNodes ().at (0 );
1840- auto & left_inner_column = left_inner_column_node->as <ColumnNode &>();
1840+ auto * left_inner_column = left_inner_column_node->as <ColumnNode>();
1841+ if (!left_inner_column)
1842+ throw Exception (ErrorCodes::BAD_ARGUMENTS,
1843+ " JOIN USING clause expected column identifier. Actual {}" ,
1844+ left_inner_column_node->formatASTForErrorMessage ());
18411845
18421846 auto & right_inner_column_node = inner_columns_list.getNodes ().at (1 );
1843- auto & right_inner_column = right_inner_column_node->as <ColumnNode &>();
1847+ auto * right_inner_column = right_inner_column_node->as <ColumnNode>();
1848+ if (!right_inner_column)
1849+ throw Exception (ErrorCodes::BAD_ARGUMENTS,
1850+ " JOIN USING clause expected column identifier. Actual {}" ,
1851+ right_inner_column_node->formatASTForErrorMessage ());
18441852
18451853 const auto & join_node_using_column_node_type = join_node_using_column_node.getColumnType ();
1846- if (!left_inner_column. getColumnType ()->equals (*join_node_using_column_node_type))
1854+ if (!left_inner_column-> getColumnType ()->equals (*join_node_using_column_node_type))
18471855 {
18481856 const auto & left_inner_column_identifier = planner_context->getColumnNodeIdentifierOrThrow (left_inner_column_node);
18491857 left_plan_column_name_to_cast_type.emplace (left_inner_column_identifier, join_node_using_column_node_type);
18501858 }
18511859
1852- if (!right_inner_column. getColumnType ()->equals (*join_node_using_column_node_type))
1860+ if (!right_inner_column-> getColumnType ()->equals (*join_node_using_column_node_type))
18531861 {
18541862 const auto & right_inner_column_identifier = planner_context->getColumnNodeIdentifierOrThrow (right_inner_column_node);
18551863 right_plan_column_name_to_cast_type.emplace (right_inner_column_identifier, join_node_using_column_node_type);
0 commit comments