Move the histograms that records the release time offset from QuicGsoBatchWriter to QuicBatchWriterBase. PiperOrigin-RevId: 329583621 Change-Id: I83db4ae90ac0bd7f875b6ffd130d1b1cde13323b
diff --git a/quic/core/batch_writer/quic_batch_writer_base.cc b/quic/core/batch_writer/quic_batch_writer_base.cc index ade94a7..29cbccc 100644 --- a/quic/core/batch_writer/quic_batch_writer_base.cc +++ b/quic/core/batch_writer/quic_batch_writer_base.cc
@@ -8,6 +8,7 @@ #include "net/third_party/quiche/src/quic/platform/api/quic_export.h" #include "net/third_party/quiche/src/quic/platform/api/quic_flags.h" #include "net/third_party/quiche/src/quic/platform/api/quic_ptr_util.h" +#include "net/third_party/quiche/src/quic/platform/api/quic_server_stats.h" namespace quic { @@ -39,9 +40,23 @@ return WriteResult(WRITE_STATUS_MSG_TOO_BIG, EMSGSIZE); } - ReleaseTime release_time = SupportsReleaseTime() - ? GetReleaseTime(options) - : ReleaseTime{0, QuicTime::Delta::Zero()}; + ReleaseTime release_time{0, QuicTime::Delta::Zero()}; + if (SupportsReleaseTime()) { + release_time = GetReleaseTime(options); + if (release_time.release_time_offset >= QuicTime::Delta::Zero()) { + QUIC_SERVER_HISTOGRAM_TIMES( + "batch_writer_positive_release_time_offset", + release_time.release_time_offset.ToMicroseconds(), 1, 100000, 50, + "Duration from ideal release time to actual " + "release time, in microseconds."); + } else { + QUIC_SERVER_HISTOGRAM_TIMES( + "batch_writer_negative_release_time_offset", + -release_time.release_time_offset.ToMicroseconds(), 1, 100000, 50, + "Duration from actual release time to ideal " + "release time, in microseconds."); + } + } const CanBatchResult can_batch_result = CanBatch(buffer, buf_len, self_address, peer_address, options,
diff --git a/quic/core/batch_writer/quic_gso_batch_writer.cc b/quic/core/batch_writer/quic_gso_batch_writer.cc index bda5fe2..d83b83b 100644 --- a/quic/core/batch_writer/quic_gso_batch_writer.cc +++ b/quic/core/batch_writer/quic_gso_batch_writer.cc
@@ -120,18 +120,6 @@ const uint64_t actual_release_time = buffered_writes().back().release_time; const int64_t offset_ns = actual_release_time - ideal_release_time; - if (offset_ns >= 0) { - QUIC_SERVER_HISTOGRAM_TIMES("gso_writer_positive_release_time_offset", - offset_ns / 1000, 1, 100000, 50, - "Duration from ideal release time to actual " - "release time, in microseconds."); - } else { - QUIC_SERVER_HISTOGRAM_TIMES("gso_writer_negative_release_time_offset", - -offset_ns / 1000, 1, 100000, 50, - "Duration from actual release time to ideal " - "release time, in microseconds."); - } - ReleaseTime result{actual_release_time, QuicTime::Delta::FromMicroseconds(offset_ns / 1000)};