RFR: 8349910: Implement JEP 517: HTTP/3 for the HTTP Client API [v9]
Daniel Jeliński
djelinski at openjdk.org
Fri Jun 27 10:27:53 UTC 2025
On Thu, 26 Jun 2025 17:43:21 GMT, Daniel Fuchs <dfuchs at openjdk.org> wrote:
>> Daniel Fuchs has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains 525 commits:
>>
>> - merge latest changes from master branch
>> - http3: run H3StreamLimitReachedTest.java with -Djdk.httpclient.http3.maxStreamLimitTimeout=0 too
>> - retry the ResetControlStream test as needed
>> - http3: fix pending connection and reconnection on stream limit reached logic
>> - http3: pending acknowledgement should be registered before actually sending the packet
>> - http3: fix race with ping requests in PacketSpaceManager.java causing intermittent failures in H3ErrorHandlingTest.java
>> - http3: improve exceptions in Http3ServerExchange.java
>> - http3: fix exception handling in CancelRequestTest.java
>> - http3: review feedback - revert HPACK.java
>> - Implement X509TrustManagerImpl#checkClientTrusted for QUIC
>> - ... and 515 more: https://git.openjdk.org/jdk/compare/5a1301df...0229c215
>
> src/java.base/share/classes/sun/security/ssl/OutputRecord.java line 168:
>
>> 166: throw new UnsupportedOperationException();
>> 167: }
>> 168:
>
> Do we need those two methods here? Or could we just have them on `QuicEngineOutputRecord` and do the appropriate cast at the point they are called?
> Or do we have that at this level for performance reasons?
This was done to match the surrounding code. There's a bunch of methods in OutputRecord that throw UOE and are overridden by one class only. I suppose it would be cleaner to just do the cast, but "when in Rome, do as the Romans do"
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/24751#discussion_r2171543796
More information about the net-dev
mailing list