From a553411105bdfb0855d3c868abe753b35237037e Mon Sep 17 00:00:00 2001 From: Jakob Lovhall Date: Sat, 2 May 2026 22:52:30 +0200 Subject: [PATCH 01/11] do not use MultiSpanProcessor for single processors --- .../opentelemetry/sdk/trace/tracer_context.h | 1 + sdk/src/trace/tracer_context.cc | 46 +++++++++++++++++-- 2 files changed, 42 insertions(+), 5 deletions(-) diff --git a/sdk/include/opentelemetry/sdk/trace/tracer_context.h b/sdk/include/opentelemetry/sdk/trace/tracer_context.h index 81edbb5322..17327da053 100644 --- a/sdk/include/opentelemetry/sdk/trace/tracer_context.h +++ b/sdk/include/opentelemetry/sdk/trace/tracer_context.h @@ -120,6 +120,7 @@ class TracerContext std::unique_ptr id_generator_; std::unique_ptr processor_; std::unique_ptr> tracer_configurator_; + uint16_t num_processors_; }; } // namespace trace diff --git a/sdk/src/trace/tracer_context.cc b/sdk/src/trace/tracer_context.cc index c3cbfb9d76..dfc8fed9a3 100644 --- a/sdk/src/trace/tracer_context.cc +++ b/sdk/src/trace/tracer_context.cc @@ -32,9 +32,22 @@ TracerContext::TracerContext(std::vector> &&proce : resource_(resource), sampler_(std::move(sampler)), id_generator_(std::move(id_generator)), - processor_(std::unique_ptr(new MultiSpanProcessor(std::move(processors)))), - tracer_configurator_(std::move(tracer_configurator)) -{} + tracer_configurator_(std::move(tracer_configurator)), + num_processors_(0) +{ + if (processors.empty()) + { + processor_ = std::unique_ptr(new MultiSpanProcessor(std::move(processors))); + } + else + { + // at least one processor is available here + for (auto &&processor : processors) + { + AddProcessor(std::move(processor)); + } + } +} Sampler &TracerContext::GetSampler() const noexcept { @@ -59,9 +72,32 @@ opentelemetry::sdk::trace::IdGenerator &TracerContext::GetIdGenerator() const no void TracerContext::AddProcessor(std::unique_ptr processor) noexcept { + if (!processor) + { + return; + } + + if (num_processors_ == 0) + { + // this is the first processor to be added, maybe the MultiSpanProcessor is not needed + processor_ = std::move(processor); + } + else if (num_processors_ == 1) + { + // if there already is a processor, then make a new MultiSpanProcessor to handle both + std::unique_ptr multi_processor(new MultiSpanProcessor({})); + multi_processor->AddProcessor(std::move(processor_)); + multi_processor->AddProcessor(std::move(processor)); + processor_ = std::move(multi_processor); + } + else /*if (num_processors_ > 1)*/ + { + // already have a MultiSpanProcessor, add the processor to it + auto multi_processor = static_cast(processor_.get()); + multi_processor->AddProcessor(std::move(processor)); + } - auto multi_processor = static_cast(processor_.get()); - multi_processor->AddProcessor(std::move(processor)); + ++num_processors_; } SpanProcessor &TracerContext::GetProcessor() const noexcept From c6b2bca36cc0c82bbd3e9866d3fabf218ac44029 Mon Sep 17 00:00:00 2001 From: Jakob Lovhall Date: Tue, 12 May 2026 21:22:51 +0200 Subject: [PATCH 02/11] add some tests --- sdk/test/trace/tracer_provider_test.cc | 67 ++++++++++++++++++++++++++ 1 file changed, 67 insertions(+) diff --git a/sdk/test/trace/tracer_provider_test.cc b/sdk/test/trace/tracer_provider_test.cc index a3434afdd1..1f8bdffa07 100644 --- a/sdk/test/trace/tracer_provider_test.cc +++ b/sdk/test/trace/tracer_provider_test.cc @@ -18,6 +18,7 @@ #include "opentelemetry/sdk/trace/sampler.h" #include "opentelemetry/sdk/trace/samplers/always_off.h" #include "opentelemetry/sdk/trace/simple_processor.h" +#include "opentelemetry/sdk/trace/multi_span_processor.h" #include "opentelemetry/sdk/trace/simple_processor_factory.h" #include "opentelemetry/sdk/trace/tracer.h" #include "opentelemetry/sdk/trace/tracer_context.h" @@ -318,6 +319,72 @@ TEST(TracerProvider, GetTracerAbiv2) } #endif /* OPENTELEMETRY_ABI_VERSION_NO >= 2 */ +// get the same processor back, not wrapped in a MultiSpanProcessor +TEST(TracerProvider, GetProcessor) +{ + std::unique_ptr processor(new SimpleSpanProcessor(nullptr)); + std::vector> processors; + processors.push_back(std::move(processor)); + + std::unique_ptr context1(new TracerContext(std::move(processors))); + + auto & span_processor = context1->GetProcessor(); + + // Should be the SimpleSpanProcessor processor that was created above. +#ifdef OPENTELEMETRY_RTTI_ENABLED + auto processor_typeed = dynamic_cast(&span_processor); +#else + auto processor_typeed = static_cast(&span_processor); +#endif + ASSERT_NE(nullptr, processor_typeed); +} + +// get a MultiSpanProcessor back that wraps both processors +TEST(TracerProvider, GetProcessorsTwo) +{ + std::unique_ptr processor1(new SimpleSpanProcessor(nullptr)); + std::unique_ptr processor2(new SimpleSpanProcessor(nullptr)); + std::vector> processors; + processors.push_back(std::move(processor1)); + processors.push_back(std::move(processor2)); + + std::unique_ptr context1(new TracerContext(std::move(processors))); + + auto & span_processor = context1->GetProcessor(); + + // Should be the SimpleSpanProcessor processor that was created above. +#ifdef OPENTELEMETRY_RTTI_ENABLED + auto processor_typeed = dynamic_cast(&span_processor); +#else + auto processor_typeed = static_cast(&span_processor); +#endif + ASSERT_NE(nullptr, processor_typeed); +} + +// get a MultiSpanProcessor back that wraps all three processors +TEST(TracerProvider, GetProcessorsThree) +{ + std::unique_ptr processor1(new SimpleSpanProcessor(nullptr)); + std::unique_ptr processor2(new SimpleSpanProcessor(nullptr)); + std::unique_ptr processor3(new SimpleSpanProcessor(nullptr)); + std::vector> processors; + processors.push_back(std::move(processor1)); + processors.push_back(std::move(processor2)); + processors.push_back(std::move(processor3)); + + std::unique_ptr context1(new TracerContext(std::move(processors))); + + auto & span_processor = context1->GetProcessor(); + + // Should be the SimpleSpanProcessor processor that was created above. +#ifdef OPENTELEMETRY_RTTI_ENABLED + auto processor_typeed = dynamic_cast(&span_processor); +#else + auto processor_typeed = static_cast(&span_processor); +#endif + ASSERT_NE(nullptr, processor_typeed); +} + TEST(TracerProvider, Shutdown) { std::unique_ptr processor(new SimpleSpanProcessor(nullptr)); From 18a46c7143ffc2dbbc2fb464f13523c41d154659 Mon Sep 17 00:00:00 2001 From: Jakob Lovhall Date: Tue, 12 May 2026 21:25:45 +0200 Subject: [PATCH 03/11] format --- sdk/test/trace/tracer_provider_test.cc | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/sdk/test/trace/tracer_provider_test.cc b/sdk/test/trace/tracer_provider_test.cc index 1f8bdffa07..e94913ad90 100644 --- a/sdk/test/trace/tracer_provider_test.cc +++ b/sdk/test/trace/tracer_provider_test.cc @@ -328,7 +328,7 @@ TEST(TracerProvider, GetProcessor) std::unique_ptr context1(new TracerContext(std::move(processors))); - auto & span_processor = context1->GetProcessor(); + auto &span_processor = context1->GetProcessor(); // Should be the SimpleSpanProcessor processor that was created above. #ifdef OPENTELEMETRY_RTTI_ENABLED @@ -350,7 +350,7 @@ TEST(TracerProvider, GetProcessorsTwo) std::unique_ptr context1(new TracerContext(std::move(processors))); - auto & span_processor = context1->GetProcessor(); + auto &span_processor = context1->GetProcessor(); // Should be the SimpleSpanProcessor processor that was created above. #ifdef OPENTELEMETRY_RTTI_ENABLED @@ -374,7 +374,7 @@ TEST(TracerProvider, GetProcessorsThree) std::unique_ptr context1(new TracerContext(std::move(processors))); - auto & span_processor = context1->GetProcessor(); + auto &span_processor = context1->GetProcessor(); // Should be the SimpleSpanProcessor processor that was created above. #ifdef OPENTELEMETRY_RTTI_ENABLED From 4a212199d3dc263ff525dd239f47d1c0361e0aad Mon Sep 17 00:00:00 2001 From: Jakob Lovhall Date: Wed, 13 May 2026 00:04:58 +0200 Subject: [PATCH 04/11] format again --- sdk/test/trace/tracer_provider_test.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sdk/test/trace/tracer_provider_test.cc b/sdk/test/trace/tracer_provider_test.cc index e94913ad90..8632fc6198 100644 --- a/sdk/test/trace/tracer_provider_test.cc +++ b/sdk/test/trace/tracer_provider_test.cc @@ -13,12 +13,12 @@ #include "opentelemetry/sdk/resource/resource.h" #include "opentelemetry/sdk/trace/exporter.h" #include "opentelemetry/sdk/trace/id_generator.h" +#include "opentelemetry/sdk/trace/multi_span_processor.h" #include "opentelemetry/sdk/trace/processor.h" #include "opentelemetry/sdk/trace/random_id_generator.h" #include "opentelemetry/sdk/trace/sampler.h" #include "opentelemetry/sdk/trace/samplers/always_off.h" #include "opentelemetry/sdk/trace/simple_processor.h" -#include "opentelemetry/sdk/trace/multi_span_processor.h" #include "opentelemetry/sdk/trace/simple_processor_factory.h" #include "opentelemetry/sdk/trace/tracer.h" #include "opentelemetry/sdk/trace/tracer_context.h" From 9be648146e3e59a1a7b0c0dfbcf5bd422f99b4a4 Mon Sep 17 00:00:00 2001 From: Jakob Lovhall Date: Wed, 13 May 2026 21:10:37 +0200 Subject: [PATCH 05/11] pointer implementation instead of counter --- .../opentelemetry/sdk/trace/tracer_context.h | 6 +++++- sdk/src/trace/tracer_context.cc | 21 ++++++++++--------- 2 files changed, 16 insertions(+), 11 deletions(-) diff --git a/sdk/include/opentelemetry/sdk/trace/tracer_context.h b/sdk/include/opentelemetry/sdk/trace/tracer_context.h index 17327da053..b2c219398c 100644 --- a/sdk/include/opentelemetry/sdk/trace/tracer_context.h +++ b/sdk/include/opentelemetry/sdk/trace/tracer_context.h @@ -23,6 +23,9 @@ namespace sdk namespace trace { +// forward declare to be able to have a raw pointer to it +class MultiSpanProcessor; + /** * A class which stores the TracerProvider context. * @@ -120,7 +123,8 @@ class TracerContext std::unique_ptr id_generator_; std::unique_ptr processor_; std::unique_ptr> tracer_configurator_; - uint16_t num_processors_; + // shares the pointer with processor_ if it is a MultiSpanProcessor, null otherwise + MultiSpanProcessor *multi_processor_; }; } // namespace trace diff --git a/sdk/src/trace/tracer_context.cc b/sdk/src/trace/tracer_context.cc index dfc8fed9a3..44c58ce609 100644 --- a/sdk/src/trace/tracer_context.cc +++ b/sdk/src/trace/tracer_context.cc @@ -33,7 +33,7 @@ TracerContext::TracerContext(std::vector> &&proce sampler_(std::move(sampler)), id_generator_(std::move(id_generator)), tracer_configurator_(std::move(tracer_configurator)), - num_processors_(0) + multi_processor_(nullptr) { if (processors.empty()) { @@ -77,27 +77,28 @@ void TracerContext::AddProcessor(std::unique_ptr processor) noexc return; } - if (num_processors_ == 0) + if (!processor_) { - // this is the first processor to be added, maybe the MultiSpanProcessor is not needed + // this is the first processor to be added processor_ = std::move(processor); } - else if (num_processors_ == 1) + else if (multi_processor_ == nullptr) { - // if there already is a processor, then make a new MultiSpanProcessor to handle both + // if there already is a processor, but its not a MultiSpanProcessor. make a new MultiSpanProcessor std::unique_ptr multi_processor(new MultiSpanProcessor({})); multi_processor->AddProcessor(std::move(processor_)); multi_processor->AddProcessor(std::move(processor)); + + // duplicate the pointer before it gets type erased + multi_processor_ = multi_processor.get(); + processor_ = std::move(multi_processor); } - else /*if (num_processors_ > 1)*/ + else /*if (multi_processor_ != nullptr)*/ { // already have a MultiSpanProcessor, add the processor to it - auto multi_processor = static_cast(processor_.get()); - multi_processor->AddProcessor(std::move(processor)); + multi_processor_->AddProcessor(std::move(processor)); } - - ++num_processors_; } SpanProcessor &TracerContext::GetProcessor() const noexcept From c74712f612116c698a571b0d3ff6a7d717534937 Mon Sep 17 00:00:00 2001 From: Jakob Lovhall Date: Wed, 13 May 2026 21:14:32 +0200 Subject: [PATCH 06/11] format --- sdk/src/trace/tracer_context.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sdk/src/trace/tracer_context.cc b/sdk/src/trace/tracer_context.cc index 44c58ce609..32eb77e5c3 100644 --- a/sdk/src/trace/tracer_context.cc +++ b/sdk/src/trace/tracer_context.cc @@ -84,7 +84,7 @@ void TracerContext::AddProcessor(std::unique_ptr processor) noexc } else if (multi_processor_ == nullptr) { - // if there already is a processor, but its not a MultiSpanProcessor. make a new MultiSpanProcessor + // a processor exists, but it's not a MultiSpanProcessor. make a new MultiSpanProcessor std::unique_ptr multi_processor(new MultiSpanProcessor({})); multi_processor->AddProcessor(std::move(processor_)); multi_processor->AddProcessor(std::move(processor)); From 84706096f722e47d7b590fe858322a5aee3dae56 Mon Sep 17 00:00:00 2001 From: Jakob Lovhall Date: Wed, 13 May 2026 21:25:45 +0200 Subject: [PATCH 07/11] try to get past cppcheck --- sdk/src/trace/tracer_context.cc | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/sdk/src/trace/tracer_context.cc b/sdk/src/trace/tracer_context.cc index 32eb77e5c3..f72564f4b8 100644 --- a/sdk/src/trace/tracer_context.cc +++ b/sdk/src/trace/tracer_context.cc @@ -85,13 +85,11 @@ void TracerContext::AddProcessor(std::unique_ptr processor) noexc else if (multi_processor_ == nullptr) { // a processor exists, but it's not a MultiSpanProcessor. make a new MultiSpanProcessor - std::unique_ptr multi_processor(new MultiSpanProcessor({})); + multi_processor_ = new MultiSpanProcessor({}); + std::unique_ptr multi_processor(multi_processor_); multi_processor->AddProcessor(std::move(processor_)); multi_processor->AddProcessor(std::move(processor)); - // duplicate the pointer before it gets type erased - multi_processor_ = multi_processor.get(); - processor_ = std::move(multi_processor); } else /*if (multi_processor_ != nullptr)*/ From fc50aae8d3f17352dbc17904d9fbc2d809b1c422 Mon Sep 17 00:00:00 2001 From: Jakob Lovhall Date: Thu, 14 May 2026 17:08:44 +0200 Subject: [PATCH 08/11] verify more in tests --- .../sdk/trace/multi_span_processor.h | 3 ++ sdk/test/trace/tracer_provider_test.cc | 54 +++++++++++++++++-- 2 files changed, 52 insertions(+), 5 deletions(-) diff --git a/sdk/include/opentelemetry/sdk/trace/multi_span_processor.h b/sdk/include/opentelemetry/sdk/trace/multi_span_processor.h index 7b0172dc8e..85caf5f1a1 100644 --- a/sdk/include/opentelemetry/sdk/trace/multi_span_processor.h +++ b/sdk/include/opentelemetry/sdk/trace/multi_span_processor.h @@ -194,6 +194,9 @@ class MultiSpanProcessor : public SpanProcessor ProcessorNode *head_{nullptr}; ProcessorNode *tail_{nullptr}; size_t count_{0}; + + // For testing + friend class MultiSpanProcessorTestPeer; }; } // namespace trace } // namespace sdk diff --git a/sdk/test/trace/tracer_provider_test.cc b/sdk/test/trace/tracer_provider_test.cc index 8632fc6198..c4a320229d 100644 --- a/sdk/test/trace/tracer_provider_test.cc +++ b/sdk/test/trace/tracer_provider_test.cc @@ -39,6 +39,34 @@ using namespace opentelemetry::sdk::trace; using namespace opentelemetry::sdk::resource; +OPENTELEMETRY_BEGIN_NAMESPACE +namespace sdk +{ +namespace trace +{ +class MultiSpanProcessorTestPeer +{ +public: + static + std::vector GetProcessors(MultiSpanProcessor * multi_span_processor) + { + std::vector res; + + MultiSpanProcessor::ProcessorNode *node = multi_span_processor->head_; + while (node != nullptr) + { + auto processor = node->value_.get(); + res.emplace_back(processor); + node = node->next_; + } + + return res; + } +}; +} +} +OPENTELEMETRY_END_NAMESPACE + TEST(TracerProvider, GetTracer) { std::unique_ptr processor(new SimpleSpanProcessor(nullptr)); @@ -342,8 +370,13 @@ TEST(TracerProvider, GetProcessor) // get a MultiSpanProcessor back that wraps both processors TEST(TracerProvider, GetProcessorsTwo) { - std::unique_ptr processor1(new SimpleSpanProcessor(nullptr)); - std::unique_ptr processor2(new SimpleSpanProcessor(nullptr)); + std::vector processors_raw(2); + processors_raw[0] = new SimpleSpanProcessor(nullptr); // deleted via unique_ptr + processors_raw[1] = new SimpleSpanProcessor(nullptr); // deleted via unique_ptr + + std::unique_ptr processor1(processors_raw[0]); + std::unique_ptr processor2(processors_raw[1]); + std::vector> processors; processors.push_back(std::move(processor1)); processors.push_back(std::move(processor2)); @@ -359,14 +392,22 @@ TEST(TracerProvider, GetProcessorsTwo) auto processor_typeed = static_cast(&span_processor); #endif ASSERT_NE(nullptr, processor_typeed); + + std::vector contained_processors = MultiSpanProcessorTestPeer::GetProcessors(processor_typeed); + EXPECT_EQ(processors_raw, contained_processors); } // get a MultiSpanProcessor back that wraps all three processors TEST(TracerProvider, GetProcessorsThree) { - std::unique_ptr processor1(new SimpleSpanProcessor(nullptr)); - std::unique_ptr processor2(new SimpleSpanProcessor(nullptr)); - std::unique_ptr processor3(new SimpleSpanProcessor(nullptr)); + std::vector processors_raw(3); + processors_raw[0] = new SimpleSpanProcessor(nullptr); // deleted via unique_ptr + processors_raw[1] = new SimpleSpanProcessor(nullptr); // deleted via unique_ptr + processors_raw[2] = new SimpleSpanProcessor(nullptr); // deleted via unique_ptr + + std::unique_ptr processor1(processors_raw[0]); + std::unique_ptr processor2(processors_raw[1]); + std::unique_ptr processor3(processors_raw[2]); std::vector> processors; processors.push_back(std::move(processor1)); processors.push_back(std::move(processor2)); @@ -383,6 +424,9 @@ TEST(TracerProvider, GetProcessorsThree) auto processor_typeed = static_cast(&span_processor); #endif ASSERT_NE(nullptr, processor_typeed); + + std::vector contained_processors = MultiSpanProcessorTestPeer::GetProcessors(processor_typeed); + EXPECT_EQ(processors_raw, contained_processors); } TEST(TracerProvider, Shutdown) From 8591d82b7e7b593d81f908cf132c1172c835d7ee Mon Sep 17 00:00:00 2001 From: Jakob Lovhall Date: Thu, 14 May 2026 21:34:03 +0200 Subject: [PATCH 09/11] format --- sdk/test/trace/tracer_provider_test.cc | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/sdk/test/trace/tracer_provider_test.cc b/sdk/test/trace/tracer_provider_test.cc index c4a320229d..5cf7ce23bc 100644 --- a/sdk/test/trace/tracer_provider_test.cc +++ b/sdk/test/trace/tracer_provider_test.cc @@ -370,9 +370,9 @@ TEST(TracerProvider, GetProcessor) // get a MultiSpanProcessor back that wraps both processors TEST(TracerProvider, GetProcessorsTwo) { - std::vector processors_raw(2); - processors_raw[0] = new SimpleSpanProcessor(nullptr); // deleted via unique_ptr - processors_raw[1] = new SimpleSpanProcessor(nullptr); // deleted via unique_ptr + std::vector processors_raw(2); + processors_raw[0] = new SimpleSpanProcessor(nullptr); // deleted via unique_ptr + processors_raw[1] = new SimpleSpanProcessor(nullptr); // deleted via unique_ptr std::unique_ptr processor1(processors_raw[0]); std::unique_ptr processor2(processors_raw[1]); @@ -393,17 +393,18 @@ TEST(TracerProvider, GetProcessorsTwo) #endif ASSERT_NE(nullptr, processor_typeed); - std::vector contained_processors = MultiSpanProcessorTestPeer::GetProcessors(processor_typeed); + std::vector contained_processors = + MultiSpanProcessorTestPeer::GetProcessors(processor_typeed); EXPECT_EQ(processors_raw, contained_processors); } // get a MultiSpanProcessor back that wraps all three processors TEST(TracerProvider, GetProcessorsThree) { - std::vector processors_raw(3); - processors_raw[0] = new SimpleSpanProcessor(nullptr); // deleted via unique_ptr - processors_raw[1] = new SimpleSpanProcessor(nullptr); // deleted via unique_ptr - processors_raw[2] = new SimpleSpanProcessor(nullptr); // deleted via unique_ptr + std::vector processors_raw(3); + processors_raw[0] = new SimpleSpanProcessor(nullptr); // deleted via unique_ptr + processors_raw[1] = new SimpleSpanProcessor(nullptr); // deleted via unique_ptr + processors_raw[2] = new SimpleSpanProcessor(nullptr); // deleted via unique_ptr std::unique_ptr processor1(processors_raw[0]); std::unique_ptr processor2(processors_raw[1]); @@ -425,7 +426,8 @@ TEST(TracerProvider, GetProcessorsThree) #endif ASSERT_NE(nullptr, processor_typeed); - std::vector contained_processors = MultiSpanProcessorTestPeer::GetProcessors(processor_typeed); + std::vector contained_processors = + MultiSpanProcessorTestPeer::GetProcessors(processor_typeed); EXPECT_EQ(processors_raw, contained_processors); } From 739e24e74ccee5afec84a6931f8a92c599db4c71 Mon Sep 17 00:00:00 2001 From: Jakob Lovhall Date: Fri, 15 May 2026 00:00:38 +0200 Subject: [PATCH 10/11] more formatting --- sdk/test/trace/tracer_provider_test.cc | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/sdk/test/trace/tracer_provider_test.cc b/sdk/test/trace/tracer_provider_test.cc index 5cf7ce23bc..ac284f1fca 100644 --- a/sdk/test/trace/tracer_provider_test.cc +++ b/sdk/test/trace/tracer_provider_test.cc @@ -47,10 +47,9 @@ namespace trace class MultiSpanProcessorTestPeer { public: - static - std::vector GetProcessors(MultiSpanProcessor * multi_span_processor) + static std::vector GetProcessors(MultiSpanProcessor * multi_span_processor) { - std::vector res; + std::vector res; MultiSpanProcessor::ProcessorNode *node = multi_span_processor->head_; while (node != nullptr) @@ -63,8 +62,8 @@ class MultiSpanProcessorTestPeer return res; } }; -} -} +} // namespace trace +} // namespace sdk OPENTELEMETRY_END_NAMESPACE TEST(TracerProvider, GetTracer) @@ -394,7 +393,7 @@ TEST(TracerProvider, GetProcessorsTwo) ASSERT_NE(nullptr, processor_typeed); std::vector contained_processors = - MultiSpanProcessorTestPeer::GetProcessors(processor_typeed); + MultiSpanProcessorTestPeer::GetProcessors(processor_typeed); EXPECT_EQ(processors_raw, contained_processors); } @@ -427,7 +426,7 @@ TEST(TracerProvider, GetProcessorsThree) ASSERT_NE(nullptr, processor_typeed); std::vector contained_processors = - MultiSpanProcessorTestPeer::GetProcessors(processor_typeed); + MultiSpanProcessorTestPeer::GetProcessors(processor_typeed); EXPECT_EQ(processors_raw, contained_processors); } From 6a785f52f92bf9f275c8e4f334dcb91c8aae1fbb Mon Sep 17 00:00:00 2001 From: Jakob Lovhall Date: Fri, 15 May 2026 00:02:00 +0200 Subject: [PATCH 11/11] format --- sdk/test/trace/tracer_provider_test.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sdk/test/trace/tracer_provider_test.cc b/sdk/test/trace/tracer_provider_test.cc index ac284f1fca..5fc968a892 100644 --- a/sdk/test/trace/tracer_provider_test.cc +++ b/sdk/test/trace/tracer_provider_test.cc @@ -47,7 +47,7 @@ namespace trace class MultiSpanProcessorTestPeer { public: - static std::vector GetProcessors(MultiSpanProcessor * multi_span_processor) + static std::vector GetProcessors(MultiSpanProcessor *multi_span_processor) { std::vector res;