From 4caf9b6e6fa53adb1e7208c992469175a9344c2f Mon Sep 17 00:00:00 2001 From: Igor Nikonov Date: Tue, 16 Jul 2024 08:57:15 +0000 Subject: [PATCH] Better diagnostic message formatting --- src/Processors/QueryPlan/ReadFromRemote.cpp | 22 ++++++++------------- 1 file changed, 8 insertions(+), 14 deletions(-) diff --git a/src/Processors/QueryPlan/ReadFromRemote.cpp b/src/Processors/QueryPlan/ReadFromRemote.cpp index 3c6c651ae02..caa332c2ebc 100644 --- a/src/Processors/QueryPlan/ReadFromRemote.cpp +++ b/src/Processors/QueryPlan/ReadFromRemote.cpp @@ -22,7 +22,7 @@ #include #include -#include +#include namespace DB { @@ -391,15 +391,11 @@ ReadFromParallelRemoteReplicasStep::ReadFromParallelRemoteReplicasStep( std::vector replicas; replicas.reserve(cluster->getShardsAddresses().front().size()); - bool first_local = false; for (const auto & addr : cluster->getShardsAddresses().front()) { /// skip first local - if (exclude_local_replica && addr.is_local && !first_local) - { - first_local = true; + if (exclude_local_replica && addr.is_local) continue; - } /// replace hostname with replica name if the hostname started with replica namespace, /// it makes description shorter and more readable @@ -409,7 +405,7 @@ ReadFromParallelRemoteReplicasStep::ReadFromParallelRemoteReplicasStep( replicas.push_back(fmt::format("{}", addr.host_name)); } - auto description = fmt::format("Query: {} Replicas: ", formattedAST(query_ast)) + boost::algorithm::join(replicas, ", "); + auto description = fmt::format("Query: {} Replicas: {}", formattedAST(query_ast), fmt::join(replicas, ", ")); setStepDescription(std::move(description)); } @@ -489,13 +485,11 @@ void ReadFromParallelRemoteReplicasStep::initializePipeline(QueryPipelineBuilder if (pools_to_use.empty()) return; - { - String pool_addresses; - for (const auto & pool : pools_to_use) - pool_addresses += pool->getAddress() + ";"; - - LOG_DEBUG(getLogger("ReadFromParallelRemoteReplicasStep"), "Addresses to use: {}", pool_addresses); - } + std::vector addresses; + addresses.reserve(pools_to_use.size()); + for (const auto & pool : pools_to_use) + addresses.emplace_back(pool->getAddress()); + LOG_DEBUG(getLogger("ReadFromParallelRemoteReplicasStep"), "Addresses to use: {}", fmt::join(addresses, ", ")); /// when using local plan for local replica, local replica has 0 number size_t offset = (exclude_local_replica ? 1 : 0);