diff --git a/contrib/grpc b/contrib/grpc index 7bc3abe952a..62e871c36fa 160000 --- a/contrib/grpc +++ b/contrib/grpc @@ -1 +1 @@ -Subproject commit 7bc3abe952aba1dc7bce7f2f790dc781cb51a41e +Subproject commit 62e871c36fa93c0af939bd31762845265214fe3d diff --git a/contrib/libdivide b/contrib/libdivide index 3bd34388573..cbb7b3f4270 160000 --- a/contrib/libdivide +++ b/contrib/libdivide @@ -1 +1 @@ -Subproject commit 3bd34388573681ce563348cdf04fe15d24770d04 +Subproject commit cbb7b3f4270707df17bfa1d03e32644020307322 diff --git a/contrib/simdjson b/contrib/simdjson index 6060be2fdf6..e341c8b4386 160000 --- a/contrib/simdjson +++ b/contrib/simdjson @@ -1 +1 @@ -Subproject commit 6060be2fdf62edf4a8f51a8b0883d57d09397b30 +Subproject commit e341c8b43861b43de29c48ab65f292d997096953 diff --git a/programs/client/Client.cpp b/programs/client/Client.cpp index 6e2a207ae6f..1f99134aa10 100644 --- a/programs/client/Client.cpp +++ b/programs/client/Client.cpp @@ -774,7 +774,7 @@ bool Client::processWithFuzzing(const String & full_query) else this_query_runs = 1; } - else if (const auto * insert = orig_ast->as()) + else if (const auto * /*insert*/ _ = orig_ast->as()) { this_query_runs = 1; queries_for_fuzzed_tables = fuzzer.getInsertQueriesForFuzzedTables(full_query); diff --git a/src/Analyzer/IQueryTreeNode.cpp b/src/Analyzer/IQueryTreeNode.cpp index cd085babf38..cfba4b41410 100644 --- a/src/Analyzer/IQueryTreeNode.cpp +++ b/src/Analyzer/IQueryTreeNode.cpp @@ -336,7 +336,7 @@ ASTPtr IQueryTreeNode::toAST(const ConvertToASTOptions & options) const { auto converted_node = toASTImpl(options); - if (auto * ast_with_alias = dynamic_cast(converted_node.get())) + if (auto * /*ast_with_alias*/ _ = dynamic_cast(converted_node.get())) converted_node->setAlias(alias); return converted_node; diff --git a/src/Analyzer/Passes/FunctionToSubcolumnsPass.cpp b/src/Analyzer/Passes/FunctionToSubcolumnsPass.cpp index f78eb2a0b76..abd0a95c6f2 100644 --- a/src/Analyzer/Passes/FunctionToSubcolumnsPass.cpp +++ b/src/Analyzer/Passes/FunctionToSubcolumnsPass.cpp @@ -285,7 +285,7 @@ public: return; } - if (const auto * join_node = node->as()) + if (const auto * /*join_node*/ _ = node->as()) { can_wrap_result_columns_with_nullable |= getContext()->getSettingsRef()[Setting::join_use_nulls]; return; diff --git a/src/Analyzer/Passes/OptimizeDateOrDateTimeConverterWithPreimagePass.cpp b/src/Analyzer/Passes/OptimizeDateOrDateTimeConverterWithPreimagePass.cpp index f11d5fa003f..e4490789cab 100644 --- a/src/Analyzer/Passes/OptimizeDateOrDateTimeConverterWithPreimagePass.cpp +++ b/src/Analyzer/Passes/OptimizeDateOrDateTimeConverterWithPreimagePass.cpp @@ -77,7 +77,7 @@ public: for (size_t i = 0; i < function->getArguments().getNodes().size(); i++) { - if (const auto * func = function->getArguments().getNodes()[i]->as()) + if (const auto * /*func*/ _ = function->getArguments().getNodes()[i]->as()) { func_id = i; break; diff --git a/src/Analyzer/QueryTreeBuilder.cpp b/src/Analyzer/QueryTreeBuilder.cpp index 08cf0cc4397..39c59d27e2c 100644 --- a/src/Analyzer/QueryTreeBuilder.cpp +++ b/src/Analyzer/QueryTreeBuilder.cpp @@ -676,7 +676,7 @@ QueryTreeNodePtr QueryTreeBuilder::buildExpression(const ASTPtr & expression, co result = std::move(query_node); } - else if (const auto * select_with_union_query = expression->as()) + else if (const auto * /*select_with_union_query*/ _ = expression->as()) { auto query_node = buildSelectWithUnionExpression(expression, false /*is_subquery*/, {} /*cte_name*/, context); result = std::move(query_node); diff --git a/src/Analyzer/Resolve/QueryAnalyzer.cpp b/src/Analyzer/Resolve/QueryAnalyzer.cpp index 6ff5ac0c4c9..8ba64b0d986 100644 --- a/src/Analyzer/Resolve/QueryAnalyzer.cpp +++ b/src/Analyzer/Resolve/QueryAnalyzer.cpp @@ -1949,7 +1949,7 @@ QueryAnalyzer::QueryTreeNodesWithNames QueryAnalyzer::resolveUnqualifiedMatcher( { bool table_expression_in_resolve_process = nearest_query_scope->table_expressions_in_resolve_process.contains(table_expression.get()); - if (auto * array_join_node = table_expression->as()) + if (auto * /*array_join_node*/ _ = table_expression->as()) { if (table_expressions_column_nodes_with_names_stack.empty()) throw Exception(ErrorCodes::LOGICAL_ERROR, diff --git a/src/Analyzer/Resolve/QueryExpressionsAliasVisitor.h b/src/Analyzer/Resolve/QueryExpressionsAliasVisitor.h index 45d081e34ea..31b2f07b97a 100644 --- a/src/Analyzer/Resolve/QueryExpressionsAliasVisitor.h +++ b/src/Analyzer/Resolve/QueryExpressionsAliasVisitor.h @@ -45,7 +45,7 @@ public: bool needChildVisit(const QueryTreeNodePtr &, const QueryTreeNodePtr & child) { - if (auto * lambda_node = child->as()) + if (auto * /*lambda_node*/ _ = child->as()) { updateAliasesIfNeeded(child, true /*is_lambda_node*/); return false; diff --git a/src/Common/QueryFuzzer.cpp b/src/Common/QueryFuzzer.cpp index 0b2f6c09b45..2122f7355f4 100644 --- a/src/Common/QueryFuzzer.cpp +++ b/src/Common/QueryFuzzer.cpp @@ -1005,7 +1005,7 @@ void QueryFuzzer::fuzzExpressionList(ASTExpressionList & expr_list) { for (auto & child : expr_list.children) { - if (auto * literal = typeid_cast(child.get())) + if (auto * /*literal*/ _ = typeid_cast(child.get())) { if (fuzz_rand() % 13 == 0) child = fuzzLiteralUnderExpressionList(child); diff --git a/src/Common/Scheduler/Nodes/FairPolicy.h b/src/Common/Scheduler/Nodes/FairPolicy.h index fba637e979e..1a4c7b94b28 100644 --- a/src/Common/Scheduler/Nodes/FairPolicy.h +++ b/src/Common/Scheduler/Nodes/FairPolicy.h @@ -52,7 +52,7 @@ public: { if (!ISchedulerNode::equals(other)) return false; - if (auto * o = dynamic_cast(other)) + if (auto * _ = dynamic_cast(other)) return true; return false; } diff --git a/src/Common/Scheduler/Nodes/FifoQueue.h b/src/Common/Scheduler/Nodes/FifoQueue.h index 9fbc6d1ae65..90f8fffe665 100644 --- a/src/Common/Scheduler/Nodes/FifoQueue.h +++ b/src/Common/Scheduler/Nodes/FifoQueue.h @@ -34,7 +34,7 @@ public: { if (!ISchedulerNode::equals(other)) return false; - if (auto * o = dynamic_cast(other)) + if (auto * _ = dynamic_cast(other)) return true; return false; } diff --git a/src/Common/Scheduler/Nodes/PriorityPolicy.h b/src/Common/Scheduler/Nodes/PriorityPolicy.h index 91dc95600d5..88fa8c240ca 100644 --- a/src/Common/Scheduler/Nodes/PriorityPolicy.h +++ b/src/Common/Scheduler/Nodes/PriorityPolicy.h @@ -43,7 +43,7 @@ public: { if (!ISchedulerNode::equals(other)) return false; - if (auto * o = dynamic_cast(other)) + if (auto * _ = dynamic_cast(other)) return true; return false; } diff --git a/src/Common/Scheduler/SchedulerRoot.h b/src/Common/Scheduler/SchedulerRoot.h index 5307aadc3cc..4ba6bc65e1c 100644 --- a/src/Common/Scheduler/SchedulerRoot.h +++ b/src/Common/Scheduler/SchedulerRoot.h @@ -99,7 +99,7 @@ public: { if (!ISchedulerNode::equals(other)) return false; - if (auto * o = dynamic_cast(other)) + if (auto * _ = dynamic_cast(other)) return true; return false; } diff --git a/src/DataTypes/Serializations/SerializationObjectDeprecated.cpp b/src/DataTypes/Serializations/SerializationObjectDeprecated.cpp index 4e9ebf6c03d..87dec688528 100644 --- a/src/DataTypes/Serializations/SerializationObjectDeprecated.cpp +++ b/src/DataTypes/Serializations/SerializationObjectDeprecated.cpp @@ -294,7 +294,7 @@ void SerializationObjectDeprecated::serializeBinaryBulkWithMultipleStrea } settings.path.push_back(Substream::DeprecatedObjectData); - if (auto * stream = settings.getter(settings.path)) + if (auto * /*stream*/ _ = settings.getter(settings.path)) { state_object->nested_serialization->serializeBinaryBulkWithMultipleStreams( *tuple_column, offset, limit, settings, state_object->nested_state); diff --git a/src/Dictionaries/CacheDictionaryStorage.h b/src/Dictionaries/CacheDictionaryStorage.h index 781822533e9..8c9f59cc112 100644 --- a/src/Dictionaries/CacheDictionaryStorage.h +++ b/src/Dictionaries/CacheDictionaryStorage.h @@ -585,7 +585,7 @@ private: template void getAttributeContainer(size_t attribute_index, GetContainerFunc && func) const { - return const_cast *>(this)->template getAttributeContainer(attribute_index, std::forward(func)); + return const_cast *>(this)->getAttributeContainer(attribute_index, std::forward(func)); } template diff --git a/src/Formats/SchemaInferenceUtils.cpp b/src/Formats/SchemaInferenceUtils.cpp index f805149e892..ae421a125ea 100644 --- a/src/Formats/SchemaInferenceUtils.cpp +++ b/src/Formats/SchemaInferenceUtils.cpp @@ -978,7 +978,7 @@ namespace if (settings.try_infer_integers) { /// If we read from String, we can do it in a more efficient way. - if (auto * string_buf = dynamic_cast(&buf)) + if (auto * /*string_buf*/ _ = dynamic_cast(&buf)) { /// Remember the pointer to the start of the number to rollback to it. /// We can safely get back to the start of the number, because we read from a string and we didn't reach eof. diff --git a/src/Functions/space.cpp b/src/Functions/space.cpp index cf1634e0319..764da8e49f5 100644 --- a/src/Functions/space.cpp +++ b/src/Functions/space.cpp @@ -141,7 +141,7 @@ public: ColumnString::Offsets & res_offsets = col_res->getOffsets(); ColumnString::Chars & res_chars = col_res->getChars(); - if (const ColumnConst * col_num_const = checkAndGetColumn(col_num.get())) + if (const ColumnConst * /*col_num_const*/ _ = checkAndGetColumn(col_num.get())) { if ((executeConstant(col_num, res_offsets, res_chars, input_rows_count)) || (executeConstant(col_num, res_offsets, res_chars, input_rows_count)) diff --git a/src/Interpreters/GetAggregatesVisitor.cpp b/src/Interpreters/GetAggregatesVisitor.cpp index 718721308b1..60b287130df 100644 --- a/src/Interpreters/GetAggregatesVisitor.cpp +++ b/src/Interpreters/GetAggregatesVisitor.cpp @@ -37,7 +37,7 @@ struct WindowExpressionsCollectorMatcher } // We process every expression manually - if (auto * func = node->as()) + if (auto * /*func*/ _ = node->as()) return false; return true; diff --git a/src/Interpreters/OptimizeDateOrDateTimeConverterWithPreimageVisitor.cpp b/src/Interpreters/OptimizeDateOrDateTimeConverterWithPreimageVisitor.cpp index 913f9900b77..b2419018e18 100644 --- a/src/Interpreters/OptimizeDateOrDateTimeConverterWithPreimageVisitor.cpp +++ b/src/Interpreters/OptimizeDateOrDateTimeConverterWithPreimageVisitor.cpp @@ -127,7 +127,7 @@ void OptimizeDateOrDateTimeConverterWithPreimageMatcher::visit(const ASTFunction size_t func_id = function.arguments->children.size(); for (size_t i = 0; i < function.arguments->children.size(); i++) - if (const auto * func = function.arguments->children[i]->as()) + if (const auto * /*func*/ _ = function.arguments->children[i]->as()) func_id = i; if (func_id == function.arguments->children.size()) diff --git a/src/Interpreters/RewriteArrayExistsFunctionVisitor.cpp b/src/Interpreters/RewriteArrayExistsFunctionVisitor.cpp index 64e03767c49..3de9138491b 100644 --- a/src/Interpreters/RewriteArrayExistsFunctionVisitor.cpp +++ b/src/Interpreters/RewriteArrayExistsFunctionVisitor.cpp @@ -102,7 +102,7 @@ void RewriteArrayExistsFunctionMatcher::visit(const ASTFunction & func, ASTPtr & bool RewriteArrayExistsFunctionMatcher::needChildVisit(const ASTPtr & ast, const ASTPtr &) { /// Children of ASTTableJoin are handled separately in visit() function - if (auto * join = ast->as()) + if (auto * /*join*/ _ = ast->as()) return false; return true; diff --git a/src/Interpreters/TransactionLog.cpp b/src/Interpreters/TransactionLog.cpp index fb7d60a7a2c..eb85467236e 100644 --- a/src/Interpreters/TransactionLog.cpp +++ b/src/Interpreters/TransactionLog.cpp @@ -603,7 +603,7 @@ void TransactionLog::assertTIDIsNotOutdated(const TransactionID & tid, const std /// If the second case takes place transaction's commit csn has to be set. /// We should load CSN again to distinguish the second case. if (failback_with_strict_load_csn) - if (CSN maybe_csn = failback_with_strict_load_csn->load()) + if (CSN _ = failback_with_strict_load_csn->load()) return; throw Exception(ErrorCodes::LOGICAL_ERROR, "Trying to get CSN for too old TID {}, current tail_ptr is {}, probably it's a bug", tid, tail); diff --git a/src/Parsers/ASTSelectWithUnionQuery.cpp b/src/Parsers/ASTSelectWithUnionQuery.cpp index cf72358dea7..d131a54d9b1 100644 --- a/src/Parsers/ASTSelectWithUnionQuery.cpp +++ b/src/Parsers/ASTSelectWithUnionQuery.cpp @@ -61,7 +61,7 @@ void ASTSelectWithUnionQuery::formatQueryImpl(const FormatSettings & settings, F << mode_to_str((is_normalized) ? union_mode : list_of_modes[it - list_of_selects->children.begin() - 1]) << (settings.hilite ? hilite_none : ""); - if (auto * node = (*it)->as()) + if (auto * /*node*/ _ = (*it)->as()) { if (it != list_of_selects->children.begin()) settings.ostr << settings.nl_or_ws; diff --git a/src/Planner/Planner.cpp b/src/Planner/Planner.cpp index c6bce7b38b6..ee74ed45db5 100644 --- a/src/Planner/Planner.cpp +++ b/src/Planner/Planner.cpp @@ -825,7 +825,7 @@ void addWithFillStepIfNeeded(QueryPlan & query_plan, /// /// However, INPUT `s` does not exist. Instead, we have a constant with execution name 'Hello'_String. /// To fix this, we prepend a rename : 'Hello'_String -> s - if (const auto * constant_node = interpolate_node_typed.getExpression()->as()) + if (const auto * /*constant_node*/ _ = interpolate_node_typed.getExpression()->as()) { const auto * node = &rename_dag.addInput(alias_node->result_name, alias_node->result_type); node = &rename_dag.addAlias(*node, interpolate_node_typed.getExpressionName()); diff --git a/src/Planner/Utils.cpp b/src/Planner/Utils.cpp index 35b99380ebf..665cf5cadba 100644 --- a/src/Planner/Utils.cpp +++ b/src/Planner/Utils.cpp @@ -144,7 +144,7 @@ ASTPtr queryNodeToSelectQuery(const QueryTreeNodePtr & query_node) while (true) { - if (auto * select_query = result_ast->as()) + if (auto * /*select_query*/ _ = result_ast->as()) break; else if (auto * select_with_union = result_ast->as()) result_ast = select_with_union->list_of_selects->children.at(0); diff --git a/src/Processors/QueryPlan/Optimizations/applyOrder.cpp b/src/Processors/QueryPlan/Optimizations/applyOrder.cpp index 1671f641514..8695f29c26b 100644 --- a/src/Processors/QueryPlan/Optimizations/applyOrder.cpp +++ b/src/Processors/QueryPlan/Optimizations/applyOrder.cpp @@ -137,7 +137,7 @@ SortingProperty applyOrder(QueryPlan::Node * parent, SortingProperty * propertie return std::move(*properties); } - if (auto * union_step = typeid_cast(parent->step.get())) + if (auto * /*union_step*/ _ = typeid_cast(parent->step.get())) { SortDescription common_sort_description = std::move(properties->sort_description); auto sort_scope = properties->sort_scope; diff --git a/src/Processors/QueryPlan/Optimizations/optimizeReadInOrder.cpp b/src/Processors/QueryPlan/Optimizations/optimizeReadInOrder.cpp index 7b2f10a901a..a23ff9fe93a 100644 --- a/src/Processors/QueryPlan/Optimizations/optimizeReadInOrder.cpp +++ b/src/Processors/QueryPlan/Optimizations/optimizeReadInOrder.cpp @@ -91,7 +91,7 @@ using StepStack = std::vector; QueryPlan::Node * findReadingStep(QueryPlan::Node & node, bool allow_existing_order) { IQueryPlanStep * step = node.step.get(); - if (auto * reading = checkSupportedReadingStep(step, allow_existing_order)) + if (auto * /*reading*/ _ = checkSupportedReadingStep(step, allow_existing_order)) return &node; if (node.children.size() != 1) diff --git a/src/Processors/QueryPlan/Optimizations/optimizeUseAggregateProjection.cpp b/src/Processors/QueryPlan/Optimizations/optimizeUseAggregateProjection.cpp index 0b6362d3cd2..ca128a121fb 100644 --- a/src/Processors/QueryPlan/Optimizations/optimizeUseAggregateProjection.cpp +++ b/src/Processors/QueryPlan/Optimizations/optimizeUseAggregateProjection.cpp @@ -552,7 +552,7 @@ AggregateProjectionCandidates getAggregateProjectionCandidates( static QueryPlan::Node * findReadingStep(QueryPlan::Node & node) { IQueryPlanStep * step = node.step.get(); - if (auto * reading = typeid_cast(step)) + if (auto * /*reading*/ _ = typeid_cast(step)) return &node; if (node.children.size() != 1) diff --git a/src/Processors/QueryPlan/Optimizations/useDataParallelAggregation.cpp b/src/Processors/QueryPlan/Optimizations/useDataParallelAggregation.cpp index d943fea785b..fdef4a447f3 100644 --- a/src/Processors/QueryPlan/Optimizations/useDataParallelAggregation.cpp +++ b/src/Processors/QueryPlan/Optimizations/useDataParallelAggregation.cpp @@ -194,7 +194,7 @@ size_t tryAggregatePartitionsIndependently(QueryPlan::Node * node, QueryPlan::No auto * maybe_reading_step = expression_node->children.front()->step.get(); - if (const auto * filter = typeid_cast(maybe_reading_step)) + if (const auto * /*filter*/ _ = typeid_cast(maybe_reading_step)) { const auto * filter_node = expression_node->children.front(); if (filter_node->children.size() != 1 || !filter_node->children.front()->step) diff --git a/src/Storages/ColumnsDescription.cpp b/src/Storages/ColumnsDescription.cpp index 0de9fec3bb2..0d0689618eb 100644 --- a/src/Storages/ColumnsDescription.cpp +++ b/src/Storages/ColumnsDescription.cpp @@ -607,7 +607,7 @@ bool ColumnsDescription::hasSubcolumn(const String & column_name) const auto it = columns.get<1>().find(ordinary_column_name); if (it != columns.get<1>().end() && it->type->hasDynamicSubcolumns()) { - if (auto dynamic_subcolumn_type = it->type->tryGetSubcolumnType(dynamic_subcolumn_name)) + if (auto /*dynamic_subcolumn_type*/ _ = it->type->tryGetSubcolumnType(dynamic_subcolumn_name)) return true; } @@ -811,7 +811,7 @@ bool ColumnsDescription::hasColumnOrSubcolumn(GetColumnsOptions::Kind kind, cons it = columns.get<1>().find(ordinary_column_name); if (it != columns.get<1>().end() && it->type->hasDynamicSubcolumns()) { - if (auto dynamic_subcolumn_type = it->type->hasSubcolumn(dynamic_subcolumn_name)) + if (auto /*dynamic_subcolumn_type*/ _ = it->type->hasSubcolumn(dynamic_subcolumn_name)) return true; } diff --git a/src/Storages/MergeTree/MergeTreeData.cpp b/src/Storages/MergeTree/MergeTreeData.cpp index a02cf18ddd7..58847817ea9 100644 --- a/src/Storages/MergeTree/MergeTreeData.cpp +++ b/src/Storages/MergeTree/MergeTreeData.cpp @@ -7047,7 +7047,7 @@ Block MergeTreeData::getMinMaxCountProjectionBlock( size_t align_of_state = func->alignOfData(); auto * place = arena.alignedAlloc(size_of_state, align_of_state); func->create(place); - if (const AggregateFunctionCount * agg_count = typeid_cast(func.get())) + if (const AggregateFunctionCount * /*agg_count*/ _ = typeid_cast(func.get())) AggregateFunctionCount::set(place, value.safeGet()); else { diff --git a/src/Storages/System/CMakeLists.txt b/src/Storages/System/CMakeLists.txt index 899c3d5cf40..c7583713d2d 100644 --- a/src/Storages/System/CMakeLists.txt +++ b/src/Storages/System/CMakeLists.txt @@ -51,5 +51,3 @@ target_link_libraries(clickhouse_storages_system PRIVATE clickhouse_parsers Poco::JSON ) - -target_include_directories(clickhouse_storages_system PRIVATE InformationSchema) diff --git a/src/TableFunctions/TableFunctionLoop.cpp b/src/TableFunctions/TableFunctionLoop.cpp index 43f122f6cb3..c9436cf02cf 100644 --- a/src/TableFunctions/TableFunctionLoop.cpp +++ b/src/TableFunctions/TableFunctionLoop.cpp @@ -71,7 +71,7 @@ namespace DB loop_table_name = id_name; } } - else if (const auto * func = args[0]->as()) + else if (const auto * /*func*/ _ = args[0]->as()) { inner_table_function_ast = args[0]; }