bneradt commented on code in PR #9366:
URL: https://github.com/apache/trafficserver/pull/9366#discussion_r1149571320
##########
proxy/http2/Http2ConnectionState.cc:
##########
@@ -1790,19 +2090,20 @@ Http2ConnectionState::send_a_data_frame(Http2Stream
*stream, size_t &payload_len
}
if (stream->is_write_vio_done()) {
+ Http2StreamDebug(this->session, stream->get_id(), "End of Data Frame");
flags |= HTTP2_FLAGS_DATA_END_STREAM;
}
// Update window size
- this->decrement_peer_rwnd_in(payload_length);
+ this->decrement_peer_rwnd(payload_length);
stream->decrement_peer_rwnd(payload_length);
// Create frame
- Http2StreamDebug(session, stream->get_id(), "Send a DATA frame - client
window con: %5zd stream: %5zd payload: %5zd",
- _peer_rwnd_in, stream->get_peer_rwnd(), payload_length);
+ Http2StreamDebug(session, stream->get_id(), "Send a DATA frame - peer window
con: %5zd stream: %5zd payload: %5zd flags: 0x%x",
+ _peer_rwnd, stream->get_peer_rwnd(), payload_length, flags);
Http2DataFrame data(stream->get_id(), flags, resp_reader, payload_length);
- this->session->xmit(data, flags & HTTP2_FLAGS_DATA_END_STREAM);
+ this->session->xmit(data);
Review Comment:
After some investigation, I was able to restore the conditional flush by
removing the HTTP/2 WINDOW check logic that was added via this patch to
`Http2Stream::update_write_request`. This passes all h2 flow control tests.
@shinrich : let me know whether you have any concerns about the `Remove
window check from update_write_request` commit I just added for this PR.
Currently that is this commit:
https://github.com/apache/trafficserver/pull/9366/commits/7c65be82299d491da076c452f6601eee3ab9e324
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]