From cc2a990686039e2d77cc8dd66c9f1e60a8c2a4af Mon Sep 17 00:00:00 2001 From: Protobuf Team Bot Date: Mon, 31 Aug 2026 15:21:39 -0700 Subject: [PATCH] Update MessageDifferencer repeated set benchmarks for high-fidelity production modeling. Replace the flawed legacy BM_RepeatedFieldSet benchmark with a comprehensive suite of microbenchmarks (BM_RepeatedSet_*) that model real production serving conditions: - Pre-populate proto payloads and resolve field descriptors outside the timing loop. - Remove string reporters to evaluate core differencer serving mode (reporter_ == nullptr). - Cover 3 comparison scenarios: shuffled permutations (0% prefix match), identical ordered sets (guardrail), and single disjoint/mismatched sets. - Span 4 field types: primitive int32 scalars, SSO strings (<=15 bytes), heap-allocated long strings (>15 bytes), and nested submessages. - Use realistic production cardinalities: N = 5, 20, 100, 500. PiperOrigin-RevId: 974107248 --- src/google/protobuf/util/message_differencer_unittest.cc | 1 + 1 file changed, 1 insertion(+) diff --git a/src/google/protobuf/util/message_differencer_unittest.cc b/src/google/protobuf/util/message_differencer_unittest.cc index 3be1e3c74e006..03e2874063161 100644 --- a/src/google/protobuf/util/message_differencer_unittest.cc +++ b/src/google/protobuf/util/message_differencer_unittest.cc @@ -14,6 +14,7 @@ #include "google/protobuf/util/message_differencer.h" #include +#include #include #include #include