Deprecate gfe2_reloadable_flag_quic_fix_out_of_order_sending2.
PiperOrigin-RevId: 345687577
Change-Id: If13e55d238db2a5af53d58ee2a63e6d7c6495c03
diff --git a/quic/core/http/end_to_end_test.cc b/quic/core/http/end_to_end_test.cc
index 433ae3b..e850aad 100644
--- a/quic/core/http/end_to_end_test.cc
+++ b/quic/core/http/end_to_end_test.cc
@@ -200,7 +200,6 @@
AddToCache("/bar", 200, kBarResponseBody);
// Enable fixes for bugs found in tests and prod.
SetQuicRestartFlag(quic_enable_zero_rtt_for_tls_v2, true);
- SetQuicReloadableFlag(quic_fix_out_of_order_sending2, true);
}
~EndToEndTest() override { QuicRecyclePort(server_address_.port()); }
diff --git a/quic/core/quic_connection.cc b/quic/core/quic_connection.cc
index 27b2664..3b7eb17 100644
--- a/quic/core/quic_connection.cc
+++ b/quic/core/quic_connection.cc
@@ -2904,8 +2904,7 @@
++stats_.packets_discarded;
return true;
case COALESCE:
- QUIC_BUG_IF(!version().CanSendCoalescedPackets());
- QUIC_BUG_IF(fix_out_of_order_sending_ && coalescing_done_);
+ QUIC_BUG_IF(!version().CanSendCoalescedPackets() || coalescing_done_);
if (!coalesced_packet_.MaybeCoalescePacket(
*packet, self_address(), send_to_address,
helper_->GetStreamSendBufferAllocator(),
@@ -2953,10 +2952,8 @@
buffered_packets_.emplace_back(*packet, self_address(), send_to_address);
break;
case SEND_TO_WRITER:
- if (fix_out_of_order_sending_ && !coalescing_done_) {
- // Stop using coalsecer from now on.
- coalescing_done_ = true;
- }
+ // Stop using coalescer from now on.
+ coalescing_done_ = true;
// At this point, packet->release_encrypted_buffer is either nullptr,
// meaning |packet->encrypted_buffer| is a stack buffer, or not-nullptr,
/// meaning it's a writer-allocated buffer. Note that connectivity probing
@@ -3403,16 +3400,9 @@
}
QuicPacketBuffer QuicConnection::GetPacketBuffer() {
- if (fix_out_of_order_sending_) {
- if (version().CanSendCoalescedPackets() && !coalescing_done_) {
- // Do not use writer's packet buffer for coalesced packets which may
- // contain
- // multiple QUIC packets.
- return {nullptr, nullptr};
- }
- } else if (version().CanSendCoalescedPackets() && !IsHandshakeConfirmed()) {
- // Do not use writer's packet buffer for coalesced packets which may contain
- // multiple QUIC packets.
+ if (version().CanSendCoalescedPackets() && !coalescing_done_) {
+ // Do not use writer's packet buffer for coalesced packets which may
+ // contain multiple QUIC packets.
return {nullptr, nullptr};
}
return writer_->GetNextWriteLocation(self_address().host(), peer_address());
@@ -5291,13 +5281,10 @@
// packet (except MTU discovery packet).
return COALESCE;
}
- if (fix_out_of_order_sending_) {
- QUIC_RELOADABLE_FLAG_COUNT(quic_fix_out_of_order_sending2);
- if (coalesced_packet_.length() > 0) {
- // If the coalescer is not empty, let this packet go through coalescer
- // to avoid potential out of order sending.
- return COALESCE;
- }
+ if (coalesced_packet_.length() > 0) {
+ // If the coalescer is not empty, let this packet go through coalescer
+ // to avoid potential out of order sending.
+ return COALESCE;
}
}
if (!buffered_packets_.empty() || HandleWriteBlocked()) {
diff --git a/quic/core/quic_connection.h b/quic/core/quic_connection.h
index bd29005..b2ce39f 100644
--- a/quic/core/quic_connection.h
+++ b/quic/core/quic_connection.h
@@ -1966,9 +1966,6 @@
const bool fix_missing_initial_keys_ =
GetQuicReloadableFlag(quic_fix_missing_initial_keys2);
- const bool fix_out_of_order_sending_ =
- GetQuicReloadableFlag(quic_fix_out_of_order_sending2);
-
const bool encrypted_control_frames_;
const bool use_encryption_level_context_;
diff --git a/quic/core/quic_flags_list.h b/quic/core/quic_flags_list.h
index 0a3a97f..4814f41 100644
--- a/quic/core/quic_flags_list.h
+++ b/quic/core/quic_flags_list.h
@@ -38,7 +38,6 @@
QUIC_FLAG(FLAGS_quic_reloadable_flag_quic_encrypted_control_frames, false)
QUIC_FLAG(FLAGS_quic_reloadable_flag_quic_extract_x509_subject_using_certificate_view, true)
QUIC_FLAG(FLAGS_quic_reloadable_flag_quic_fix_missing_initial_keys2, true)
-QUIC_FLAG(FLAGS_quic_reloadable_flag_quic_fix_out_of_order_sending2, true)
QUIC_FLAG(FLAGS_quic_reloadable_flag_quic_fix_pto_pending_timer_count, true)
QUIC_FLAG(FLAGS_quic_reloadable_flag_quic_fix_undecryptable_packets2, true)
QUIC_FLAG(FLAGS_quic_reloadable_flag_quic_fix_willing_and_able_to_write2, true)