Deprecate --gfe2_reloadable_flag_quic_abort_qpack_on_stream_reset. PiperOrigin-RevId: 454861740
diff --git a/quiche/quic/core/http/quic_spdy_stream.cc b/quiche/quic/core/http/quic_spdy_stream.cc index 10d76af..91e264c 100644 --- a/quiche/quic/core/http/quic_spdy_stream.cc +++ b/quiche/quic/core/http/quic_spdy_stream.cc
@@ -734,20 +734,15 @@ return; } - // TODO(bnc): Merge the two blocks below when both - // quic_abort_qpack_on_stream_reset and quic_fix_on_stream_reset are - // deprecated. + // TODO(bnc): Merge the two blocks below when deprecating + // quic_fix_on_stream_reset. if (frame.error_code != QUIC_STREAM_NO_ERROR) { if (VersionUsesHttp3(transport_version()) && !fin_received() && spdy_session_->qpack_decoder()) { - QUIC_CODE_COUNT_N(quic_abort_qpack_on_stream_reset, 1, 2); spdy_session_->qpack_decoder()->OnStreamReset(id()); - if (GetQuicReloadableFlag(quic_abort_qpack_on_stream_reset)) { - QUIC_RELOADABLE_FLAG_COUNT_N(quic_abort_qpack_on_stream_reset, 1, 2); - qpack_decoded_headers_accumulator_.reset(); - qpack_decoded_headers_accumulator_reset_reason_ = - QpackDecodedHeadersAccumulatorResetReason::kResetInOnStreamReset1; - } + qpack_decoded_headers_accumulator_.reset(); + qpack_decoded_headers_accumulator_reset_reason_ = + QpackDecodedHeadersAccumulatorResetReason::kResetInOnStreamReset1; } QuicStream::OnStreamReset(frame); @@ -781,14 +776,10 @@ void QuicSpdyStream::ResetWithError(QuicResetStreamError error) { if (VersionUsesHttp3(transport_version()) && !fin_received() && spdy_session_->qpack_decoder() && web_transport_data_ == nullptr) { - QUIC_CODE_COUNT_N(quic_abort_qpack_on_stream_reset, 2, 2); spdy_session_->qpack_decoder()->OnStreamReset(id()); - if (GetQuicReloadableFlag(quic_abort_qpack_on_stream_reset)) { - QUIC_RELOADABLE_FLAG_COUNT_N(quic_abort_qpack_on_stream_reset, 2, 2); - qpack_decoded_headers_accumulator_.reset(); - qpack_decoded_headers_accumulator_reset_reason_ = - QpackDecodedHeadersAccumulatorResetReason::kResetInResetWithError; - } + qpack_decoded_headers_accumulator_.reset(); + qpack_decoded_headers_accumulator_reset_reason_ = + QpackDecodedHeadersAccumulatorResetReason::kResetInResetWithError; } QuicStream::ResetWithError(error);
diff --git a/quiche/quic/core/http/quic_spdy_stream_test.cc b/quiche/quic/core/http/quic_spdy_stream_test.cc index c4526ed..2bf1ce1 100644 --- a/quiche/quic/core/http/quic_spdy_stream_test.cc +++ b/quiche/quic/core/http/quic_spdy_stream_test.cc
@@ -2564,27 +2564,13 @@ /* offset = */ 1, _, _, _)); // OnStreamReset() is called when RESET_STREAM frame is received from peer. + // This aborts header decompression. stream_->OnStreamReset(QuicRstStreamFrame( kInvalidControlFrameId, stream_->id(), QUIC_STREAM_CANCELLED, 0)); - if (!GetQuicReloadableFlag(quic_abort_qpack_on_stream_reset)) { - // Header acknowledgement. - EXPECT_CALL(*session_, - WritevData(decoder_send_stream->id(), /* write_length = */ 1, - /* offset = */ 2, _, _, _)); - EXPECT_CALL(debug_visitor, OnHeadersDecoded(stream_->id(), _)); - } - // Deliver dynamic table entry to decoder. session_->qpack_decoder()->OnInsertWithoutNameReference("foo", "bar"); - - if (GetQuicReloadableFlag(quic_abort_qpack_on_stream_reset)) { - EXPECT_FALSE(stream_->headers_decompressed()); - } else { - // Verify headers. - EXPECT_TRUE(stream_->headers_decompressed()); - EXPECT_THAT(stream_->header_list(), ElementsAre(Pair("foo", "bar"))); - } + EXPECT_FALSE(stream_->headers_decompressed()); } class QuicSpdyStreamIncrementalConsumptionTest : public QuicSpdyStreamTest {
diff --git a/quiche/quic/core/quic_flags_list.h b/quiche/quic/core/quic_flags_list.h index 83d7446..e17b850 100644 --- a/quiche/quic/core/quic_flags_list.h +++ b/quiche/quic/core/quic_flags_list.h
@@ -25,8 +25,6 @@ QUIC_FLAG(quic_restart_flag_quic_support_release_time_for_gso, false) // If true, TlsHandshaker::AdvanceHandshake will check if connection is closed after SSL_do_handshake. QUIC_FLAG(quic_reloadable_flag_quic_tls_handshaker_check_connection_closed, true) -// If true, abort async QPACK header decompression in QuicSpdyStream::Reset() and in QuicSpdyStream::OnStreamReset(). -QUIC_FLAG(quic_reloadable_flag_quic_abort_qpack_on_stream_reset, true) // If true, ack frequency frame can be sent from server to client. QUIC_FLAG(quic_reloadable_flag_quic_can_send_ack_frequency, true) // If true, allow client to enable BBRv2 on server via connection option \'B2ON\'.