RFR: 8342075: HttpClient: improve HTTP/2 flow control checks [v2]
Jaikiran Pai
jpai at openjdk.org
Tue Oct 22 13:50:29 UTC 2024
On Mon, 21 Oct 2024 11:19:08 GMT, Daniel Fuchs <dfuchs at openjdk.org> wrote:
>> Please find here a fix that improves flow control in the HTTP/2 implementation.
>>
>> The change makes sure that flow control issues are reported to the server as FLOW_CONTROL_ERROR.
>> It also clarify how some system properties that allow to initialize flow control windows are handled, by documenting the full range of valid values (when applicable) and explaining what happens if the property points to a value that is out of range.
>>
>> Bad flow control values in the SETTINGS frame will also cause a FLOW_CONTROL_ERROR to be reported.
>
> Daniel Fuchs has updated the pull request incrementally with one additional commit since the last revision:
>
> Apply suggestions from code review
>
> Co-authored-by: Andrey Turbanov <turbanoff at gmail.com>
src/java.net.http/share/classes/jdk/internal/net/http/Http2Connection.java line 1109:
> 1107: // having been added to any Stream::inputQ. In that case, the number
> 1108: // of unprocessed bytes hasn't been incremented by the stream, and
> 1109: // does not need to be decremented.
Hello Daniel, this comment looks a bit contradictory or confusing, since it says that this method gets called before/without the dataframe being added to the Stream::inputQ. But looking at the releaseUnconsumed method's implementation this dropDataFrame is being called from the releaseUnconsumed method, whose comment states "... called when a DataFrame that was added to a Stream::inputQ".
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/21567#discussion_r1810765498
More information about the net-dev
mailing list