Deprecate --gfe2_reloadable_flag_quic_enable_http3_metadata_decoding PiperOrigin-RevId: 633433081
diff --git a/quiche/common/quiche_feature_flags_list.h b/quiche/common/quiche_feature_flags_list.h index 5e28f02..dcf5b04 100755 --- a/quiche/common/quiche_feature_flags_list.h +++ b/quiche/common/quiche_feature_flags_list.h
@@ -29,7 +29,6 @@ QUICHE_FLAG(bool, quiche_reloadable_flag_quic_disable_version_rfcv1, false, "If true, disable QUIC version h3 (RFCv1).") QUICHE_FLAG(bool, quiche_reloadable_flag_quic_discard_initial_packet_with_key_dropped, false, "If true, discard INITIAL packet if the key has been dropped.") QUICHE_FLAG(bool, quiche_reloadable_flag_quic_enable_disable_resumption, true, "If true, disable resumption when receiving NRES connection option.") -QUICHE_FLAG(bool, quiche_reloadable_flag_quic_enable_http3_metadata_decoding, true, "If true, the HTTP/3 decoder will decode METADATA frames and not treat them as Unknown.") QUICHE_FLAG(bool, quiche_reloadable_flag_quic_enable_mtu_discovery_at_server, false, "If true, QUIC will default enable MTU discovery at server, with a target of 1450 bytes.") QUICHE_FLAG(bool, quiche_reloadable_flag_quic_enable_server_on_wire_ping, true, "If true, enable server retransmittable on wire PING.") QUICHE_FLAG(bool, quiche_reloadable_flag_quic_enable_version_rfcv2, false, "When true, support RFC9369.")
diff --git a/quiche/quic/core/http/http_decoder.cc b/quiche/quic/core/http/http_decoder.cc index 4ddcbcb..1503b5b 100644 --- a/quiche/quic/core/http/http_decoder.cc +++ b/quiche/quic/core/http/http_decoder.cc
@@ -43,9 +43,7 @@ current_type_field_length_(0), remaining_type_field_length_(0), error_(QUIC_NO_ERROR), - error_detail_(""), - enable_metadata_decoding_( - GetQuicReloadableFlag(quic_enable_http3_metadata_decoding)) { + error_detail_("") { QUICHE_DCHECK(visitor_); } @@ -284,10 +282,8 @@ continue_processing = visitor_->OnAcceptChFrameStart(header_length); break; default: - if (enable_metadata_decoding_ && - current_frame_type_ == - static_cast<uint64_t>(HttpFrameType::METADATA)) { - QUIC_RELOADABLE_FLAG_COUNT_N(quic_enable_http3_metadata_decoding, 1, 3); + if (current_frame_type_ == + static_cast<uint64_t>(HttpFrameType::METADATA)) { continue_processing = visitor_->OnMetadataFrameStart( header_length, current_frame_length_); break; @@ -386,10 +382,8 @@ break; } default: { - if (enable_metadata_decoding_ && - current_frame_type_ == - static_cast<uint64_t>(HttpFrameType::METADATA)) { - QUIC_RELOADABLE_FLAG_COUNT_N(quic_enable_http3_metadata_decoding, 2, 3); + if (current_frame_type_ == + static_cast<uint64_t>(HttpFrameType::METADATA)) { QuicByteCount bytes_to_read = std::min<QuicByteCount>( remaining_frame_length_, reader->BytesRemaining()); absl::string_view payload; @@ -456,10 +450,8 @@ break; } default: - if (enable_metadata_decoding_ && - current_frame_type_ == - static_cast<uint64_t>(HttpFrameType::METADATA)) { - QUIC_RELOADABLE_FLAG_COUNT_N(quic_enable_http3_metadata_decoding, 3, 3); + if (current_frame_type_ == + static_cast<uint64_t>(HttpFrameType::METADATA)) { continue_processing = visitor_->OnMetadataFrameEnd(); break; }
diff --git a/quiche/quic/core/http/http_decoder.h b/quiche/quic/core/http/http_decoder.h index a08c562..6d305e4 100644 --- a/quiche/quic/core/http/http_decoder.h +++ b/quiche/quic/core/http/http_decoder.h
@@ -282,9 +282,6 @@ std::array<char, sizeof(uint64_t)> length_buffer_; // Remaining unparsed type field data. std::array<char, sizeof(uint64_t)> type_buffer_; - - // Latched value of --quic_enable_http3_metadata_decoding. - const bool enable_metadata_decoding_; }; } // namespace quic
diff --git a/quiche/quic/core/http/http_decoder_test.cc b/quiche/quic/core/http/http_decoder_test.cc index 4fe08c0..b7f3255 100644 --- a/quiche/quic/core/http/http_decoder_test.cc +++ b/quiche/quic/core/http/http_decoder_test.cc
@@ -498,9 +498,6 @@ } TEST_F(HttpDecoderTest, MetadataFrame) { - if (!GetQuicReloadableFlag(quic_enable_http3_metadata_decoding)) { - return; - } InSequence s; std::string type_and_length_bytes; ASSERT_TRUE(
diff --git a/quiche/quic/core/http/quic_spdy_stream.cc b/quiche/quic/core/http/quic_spdy_stream.cc index 035d21f..1649bc5 100644 --- a/quiche/quic/core/http/quic_spdy_stream.cc +++ b/quiche/quic/core/http/quic_spdy_stream.cc
@@ -724,8 +724,6 @@ } void QuicSpdyStream::RegisterMetadataVisitor(MetadataVisitor* visitor) { - QUIC_BUG_IF(Metadata visitor requires http3 metadata flag, - !GetQuicReloadableFlag(quic_enable_http3_metadata_decoding)); metadata_visitor_ = visitor; }
diff --git a/quiche/quic/core/http/quic_spdy_stream_test.cc b/quiche/quic/core/http/quic_spdy_stream_test.cc index d16217f..21fc928 100644 --- a/quiche/quic/core/http/quic_spdy_stream_test.cc +++ b/quiche/quic/core/http/quic_spdy_stream_test.cc
@@ -2786,8 +2786,7 @@ }; TEST_P(QuicSpdyStreamIncrementalConsumptionTest, ReceiveMetadataFrame) { - if (!UsesHttp3() || - !GetQuicReloadableFlag(quic_enable_http3_metadata_decoding)) { + if (!UsesHttp3()) { return; } StrictMock<MockMetadataVisitor> metadata_visitor; @@ -2824,8 +2823,7 @@ TEST_P(QuicSpdyStreamIncrementalConsumptionTest, ResetDuringMultipleMetadataFrames) { - if (!UsesHttp3() || - !GetQuicReloadableFlag(quic_enable_http3_metadata_decoding)) { + if (!UsesHttp3()) { return; } StrictMock<MockMetadataVisitor> metadata_visitor;
diff --git a/quiche/quic/core/quic_flags_list.h b/quiche/quic/core/quic_flags_list.h index 61393cb..8945726 100644 --- a/quiche/quic/core/quic_flags_list.h +++ b/quiche/quic/core/quic_flags_list.h
@@ -73,8 +73,6 @@ QUIC_FLAG(quic_reloadable_flag_quic_disable_batch_write, false) // If true, set burst token to 2 in cwnd bootstrapping experiment. QUIC_FLAG(quic_reloadable_flag_quic_conservative_bursts, false) -// If true, the HTTP/3 decoder will decode METADATA frames and not treat them as Unknown. -QUIC_FLAG(quic_reloadable_flag_quic_enable_http3_metadata_decoding, true) // If true, use BBRv2 as the default congestion controller. Takes precedence over --quic_default_to_bbr. QUIC_FLAG(quic_reloadable_flag_quic_default_to_bbr_v2, false) // If true, use a LRU cache to record client addresses of packets received on server\'s original address.