On Tue, 27 Jan 2026 15:00:01 GMT, Volkan Yazici <[email protected]> wrote:
>> This fixes a deadlock between the thread that reads from the
>> RequestBodyInputStream and the thread that tries to close it in response to
>> a stream reset. See the linked JBS ticket for details.
>>
>> Tier1 and tier2 tests continue to pass. I verified that with this change
>> there are no busy threads at the end of the test.
>
> test/jdk/java/net/httpclient/lib/jdk/httpclient/test/lib/http3/Http3ServerStreamImpl.java
> line 331:
>
>> 329: }
>> 330: ByteBuffer buffer = current();
>> 331: if (buffer == QuicStreamReader.EOF) {
>
> Assume `current()` has failed and called `close(io)`, which registered
> `error`. If `buffer == EOF` (line 331) doesn't hold — which, AFAICT, it can —
> we will return `buffer.get() & 0xFF`. I guess this would be unexpected, right?
Right. I'll change that; nothing in the `InputStream` spec states that the
stream must be left in an unusable state after an exception, so I'll just stop
setting the error here.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/29448#discussion_r2733008147