From serb at openjdk.org Thu Jan 1 04:24:24 2026 From: serb at openjdk.org (Sergey Bylokhov) Date: Thu, 1 Jan 2026 04:24:24 GMT Subject: Withdrawn: 8374320: Update copyright year to 2025 for java.net.http in files where it was missed In-Reply-To: References: Message-ID: On Wed, 24 Dec 2025 02:05:28 GMT, Sergey Bylokhov wrote: > The copyright year in "java.net.http" files updated in 2025 has been bumped to 2025. All files are updated which touched the src/java.net.http and related files. > > The next command can be run (on top of this PR) to verify that each file had prior commits in 2025: > > ` > git diff HEAD~1 --name-only | while read f; do git log HEAD~1 --since="2025-01-01" --oneline -- "$f" | head -1 | grep -q . || echo "NOT IN 2025: $f"; done ` This pull request has been closed without being integrated. ------------- PR: https://git.openjdk.org/jdk/pull/28973 From lucy at openjdk.org Thu Jan 1 14:42:01 2026 From: lucy at openjdk.org (Lutz Schmidt) Date: Thu, 1 Jan 2026 14:42:01 GMT Subject: RFR: 8373704: Improve "SocketException: Protocol family unavailable" message [v2] In-Reply-To: References: Message-ID: On Thu, 18 Dec 2025 16:39:06 GMT, Matthias Baesken wrote: >> In [JDK-8373676](https://bugs.openjdk.org/browse/JDK-8373676) >> we noticed a "SocketException: Protocol family unavailable" because of missing ipv6 support. We could improve this exception and tell that the ipv6 support is not available or something related. > > Matthias Baesken has updated the pull request incrementally with one additional commit since the last revision: > > Adjust the message as suggested by jaikiran Changes look good. ------------- Marked as reviewed by lucy (Reviewer). PR Review: https://git.openjdk.org/jdk/pull/28851#pullrequestreview-3621895310 From alanb at openjdk.org Thu Jan 1 15:34:01 2026 From: alanb at openjdk.org (Alan Bateman) Date: Thu, 1 Jan 2026 15:34:01 GMT Subject: RFR: 8373704: Improve "SocketException: Protocol family unavailable" message [v2] In-Reply-To: References: Message-ID: On Thu, 18 Dec 2025 16:39:06 GMT, Matthias Baesken wrote: >> In [JDK-8373676](https://bugs.openjdk.org/browse/JDK-8373676) >> we noticed a "SocketException: Protocol family unavailable" because of missing ipv6 support. We could improve this exception and tell that the ipv6 support is not available or something related. > > Matthias Baesken has updated the pull request incrementally with one additional commit since the last revision: > > Adjust the message as suggested by jaikiran > we noticed a "SocketException: Protocol family unavailable" because of missing ipv6 support. We could improve this exception and tell that the ipv6 support is not available or something related. Would it be possible to say which method or test failure lead to this? I'm wondering how we end up calling it with an IPv6 address when not supported. ------------- PR Comment: https://git.openjdk.org/jdk/pull/28851#issuecomment-3703828941 From duke at openjdk.org Thu Jan 1 16:12:02 2026 From: duke at openjdk.org (EunHyunsu) Date: Thu, 1 Jan 2026 16:12:02 GMT Subject: RFR: 8371903: HttpClient: improve handling of HTTP/2 GOAWAY frames with error code [v10] In-Reply-To: References: Message-ID: On Fri, 19 Dec 2025 12:11:11 GMT, EunHyunsu wrote: >> ### Problem >> >> When the HTTP/2 client receives a GOAWAY frame with a non-zero error code, the current implementation discards both the error code and debug data. Users only see generic "Connection closed by peer" errors without any information about why the server terminated the connection. >> >> ### Solution >> >> Per [RFC 9113 ?5.4.1](https://www.rfc-editor.org/rfc/rfc9113.html#section-5.4.1), a GOAWAY frame with a non-zero error code indicates a connection error requiring immediate closure. This fix: >> >> 1. **Distinguishes** graceful shutdown (NO_ERROR) from connection errors >> 2. **Preserves** error code and debug data in exception messages >> 3. **Categorizes** streams based on `lastStreamId`: >> - Streams with ID > `lastStreamId`: Marked as unprocessed for automatic retry >> - Streams with ID ? `lastStreamId`: Failed with detailed error information >> >> ### Changes >> >> **Core Implementation** (`Http2Connection.java`): >> - Modified `handleGoAway()` to check error code and route appropriately >> - Added `handleGoAwayWithError()` method that: >> - Extracts error code and debug data from GOAWAY frame >> - Creates meaningful error messages with error name, hex code, and debug data >> - Properly categorizes streams for retry or failure >> >> **Test Infrastructure**: >> - `Http2TestServerConnection.sendGoAway(int, int, byte[])`: Supports custom error codes >> - `Http2TestExchangeImpl.getServerConnection()`: Accessor for test handlers >> - `GoAwayWithErrorTest`: Verifies proper error propagation >> >> ### Example >> >> **Before:** >> IOException: Connection closed by peer >> >> **After:** >> IOException: Received GOAWAY with error code Protocol error (0x1): Invalid HEADERS frame >> >> ### Testing >> >> - New `GoAwayWithErrorTest` passes >> - Existing HTTP/2 tests unaffected (NO_ERROR path unchanged) >> - Backward compatible (no public API changes) > > EunHyunsu has updated the pull request incrementally with one additional commit since the last revision: > > 8371903: Use stateLock to synchronize stream iteration and connection closure Hi all, Just following up to see if anyone has a chance to take a look at this. Thanks. ------------- PR Comment: https://git.openjdk.org/jdk/pull/28632#issuecomment-3703858581 From mbaesken at openjdk.org Fri Jan 2 08:26:57 2026 From: mbaesken at openjdk.org (Matthias Baesken) Date: Fri, 2 Jan 2026 08:26:57 GMT Subject: RFR: 8373704: Improve "SocketException: Protocol family unavailable" message [v2] In-Reply-To: References: Message-ID: <67h3VvwrDDwHRCfIQxHCux3yHg6zz9907-QCm63McFw=.626701cb-bab6-4c5a-904e-561e41541f0f@github.com> On Thu, 18 Dec 2025 16:39:06 GMT, Matthias Baesken wrote: >> In [JDK-8373676](https://bugs.openjdk.org/browse/JDK-8373676) >> we noticed a "SocketException: Protocol family unavailable" because of missing ipv6 support. We could improve this exception and tell that the ipv6 support is not available or something related. > > Matthias Baesken has updated the pull request incrementally with one additional commit since the last revision: > > Adjust the message as suggested by jaikiran Hi Alan, it was the test javax/net/ssl/HttpsURLConnection/SubjectAltNameIP.java . See https://bugs.openjdk.org/browse/JDK-8373676 . Error : command: main SubjectAltNameIP [::1] reason: User specified action: run main/othervm SubjectAltNameIP [::1] started: Sun Dec 14 21:22:53.422 CET 2025 Mode: othervm [/othervm specified] Additional options from @modules: --add-modules java.base --add-exports java.base/sun.net.util=ALL-UNNAMED Process id: 14723 finished: Sun Dec 14 21:22:59.728 CET 2025 elapsed time (seconds): 6.306 ----------configuration:(4/101)---------- Boot Layer add modules: java.base add exports: java.base/sun.net.util ALL-UNNAMED ----------System.out:(0/0)---------- ----------System.err:(26/1574)---------- java.lang.RuntimeException: Server failed to start. at SubjectAltNameIP.doClientSide(SubjectAltNameIP.java:139) at SubjectAltNameIP.(SubjectAltNameIP.java:189) at SubjectAltNameIP.main(SubjectAltNameIP.java:176) at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) at java.base/java.lang.reflect.Method.invoke(Method.java:565) at com.sun.javatest.regtest.agent.MainWrapper$MainTask.run(MainWrapper.java:138) at java.base/java.lang.Thread.run(Thread.java:1516) **Caused by: java.net.SocketException: Protocol family unavailable** at java.base/sun.nio.ch.Net.bind0(Native Method) at java.base/sun.nio.ch.Net.bind(Net.java:525) at java.base/sun.nio.ch.Net.bind(Net.java:514) at java.base/sun.nio.ch.NioSocketImpl.bind(NioSocketImpl.java:641) at java.base/java.net.ServerSocket.bind(ServerSocket.java:326) at java.base/java.net.ServerSocket.(ServerSocket.java:222) at java.base/javax.net.ssl.SSLServerSocket.(SSLServerSocket.java:155) at java.base/sun.security.ssl.SSLServerSocketImpl.(SSLServerSocketImpl.java:80) at java.base/sun.security.ssl.SSLServerSocketFactoryImpl.createServerSocket(SSLServerSocketFactoryImpl.java:87) at SubjectAltNameIP.doServerSide(SubjectAltNameIP.java:106) at SubjectAltNameIP.lambda$startServer$0(SubjectAltNameIP.java:203) ... 1 more ------------- PR Comment: https://git.openjdk.org/jdk/pull/28851#issuecomment-3704734885 From mbaesken at openjdk.org Fri Jan 2 08:26:59 2026 From: mbaesken at openjdk.org (Matthias Baesken) Date: Fri, 2 Jan 2026 08:26:59 GMT Subject: RFR: 8373704: Improve "SocketException: Protocol family unavailable" message [v2] In-Reply-To: References: Message-ID: On Thu, 1 Jan 2026 14:39:14 GMT, Lutz Schmidt wrote: > Changes look good. Thanks for the review ! ------------- PR Comment: https://git.openjdk.org/jdk/pull/28851#issuecomment-3704735509 From syan at openjdk.org Sat Jan 3 02:08:21 2026 From: syan at openjdk.org (SendaoYan) Date: Sat, 3 Jan 2026 02:08:21 GMT Subject: RFR: 8374432: TimeoutResponseBodyTest.java#retriesEnabledForResponseFailure fails run with -Xcomp [v2] In-Reply-To: References: Message-ID: > Hi all, > > The test test/jdk/java/net/httpclient/TimeoutResponseBodyTest.java#retriesEnabledForResponseFailure was observed timed out when run with jvm option -Xcomp. The failure details shows in [JDK-8374432](https://bugs.openjdk.org/browse/JDK-8374432). Maybe it need more time for C2 to compile the httpclient classes than the default mixed mode. > > So this PR read the timeout factor from jtreg, and apply the timeout factor to `REQUEST_TIMEOUT` by multiply it. Change has been verified locally by run the related tests test/jdk/java/net/httpclient/TimeoutResponseHeaderTest.java and test/jdk/java/net/httpclient/TimeoutResponseBodyTest.java both with -Xmixed and -Xcomp. Test-fix only, no risk, SendaoYan has updated the pull request incrementally with one additional commit since the last revision: use "jdk.test.lib.Utils.adjustTimeout" ------------- Changes: - all: https://git.openjdk.org/jdk/pull/29012/files - new: https://git.openjdk.org/jdk/pull/29012/files/12b21e72..9c7e744e Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=29012&range=01 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=29012&range=00-01 Stats: 8 lines in 1 file changed: 1 ins; 3 del; 4 mod Patch: https://git.openjdk.org/jdk/pull/29012.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/29012/head:pull/29012 PR: https://git.openjdk.org/jdk/pull/29012 From syan at openjdk.org Sat Jan 3 02:08:24 2026 From: syan at openjdk.org (SendaoYan) Date: Sat, 3 Jan 2026 02:08:24 GMT Subject: RFR: 8374432: TimeoutResponseBodyTest.java#retriesEnabledForResponseFailure fails run with -Xcomp [v2] In-Reply-To: References: Message-ID: On Wed, 31 Dec 2025 11:04:27 GMT, Volkan Yazici wrote: >> SendaoYan has updated the pull request incrementally with one additional commit since the last revision: >> >> use "jdk.test.lib.Utils.adjustTimeout" > > test/jdk/java/net/httpclient/TimeoutResponseTestSupport.java line 81: > >> 79: protected static final Duration REQUEST_TIMEOUT = >> 80: Duration.ofMillis(Long.parseLong(System.getProperty("test.requestTimeoutMillis")) >> 81: * timeoutFactor); > > Can we use `jdk.test.lib.Utils::adjustTimeout` instead of manually reading and applying the `test.timeout.factor` system property? Thanks for the advice. Since jdk.test.lib.Utils has some duplicate element name to jdk.internal.net.http.common.Utils, So I use the fully qualified name of jdk.test.lib.Utils.adjustTimeout. > test/jdk/java/net/httpclient/TimeoutResponseTestSupport.java line 111: > >> 109: .ofMillis(RESPONSE_FAILURE_WAIT_DURATION_MILLIS) >> 110: .multipliedBy(RETRY_LIMIT) >> 111: .multipliedBy(timeoutFactor); > > Similar to what we do with `REQUEST_TIMEOUT`, can we instead use `adjustTimeout` while initializing the `RESPONSE_FAILURE_WAIT_DURATION_MILLIS`? Same as above. Thanks. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/29012#discussion_r2658647452 PR Review Comment: https://git.openjdk.org/jdk/pull/29012#discussion_r2658647576 From alan.bateman at oracle.com Sat Jan 3 06:22:34 2026 From: alan.bateman at oracle.com (Alan Bateman) Date: Sat, 3 Jan 2026 06:22:34 +0000 Subject: Request to work on JDK-8374344 In-Reply-To: References: Message-ID: This might be tricky to specify, and could end up with some implNote to document the behavior of the JDK protocol handler. In any case, net-dev (rather than core-libs-dev) is the place to discuss this. -Alan On 02/01/2026 20:02, Alexey Ivanov wrote: > Hi Vignesh, > > This question belongs in core-libs-dev because the component of the > issue is *core-libs*. > > On 2025-12-27 15:53, Vignesh Sadanki wrote: >> Hi everyone, >> >> I'm new to OpenJDK and interested in contributing. I came across bug >> JDK-8374344 ("Clarifying HttpURLConnection.disconnect() Behavior >> Regarding Resource Management and Connection Pooling") and would like >> to work on it. >> >> Could someone confirm if this bug is available for me to take, and if >> there are any guidelines I should follow? >> >> Thanks, >> Vignesh Sadankae From alanb at openjdk.org Sat Jan 3 07:27:15 2026 From: alanb at openjdk.org (Alan Bateman) Date: Sat, 3 Jan 2026 07:27:15 GMT Subject: RFR: 8373704: Improve "SocketException: Protocol family unavailable" message [v2] In-Reply-To: <67h3VvwrDDwHRCfIQxHCux3yHg6zz9907-QCm63McFw=.626701cb-bab6-4c5a-904e-561e41541f0f@github.com> References: <67h3VvwrDDwHRCfIQxHCux3yHg6zz9907-QCm63McFw=.626701cb-bab6-4c5a-904e-561e41541f0f@github.com> Message-ID: On Fri, 2 Jan 2026 08:22:46 GMT, Matthias Baesken wrote: > Hi Alan, it was the test javax/net/ssl/HttpsURLConnection/SubjectAltNameIP.java . See https://bugs.openjdk.org/browse/JDK-8373676 . Thanks, just checking that there was an issue to track fixing the test. ------------- PR Comment: https://git.openjdk.org/jdk/pull/28851#issuecomment-3706857795 From jpai at openjdk.org Sun Jan 4 04:20:02 2026 From: jpai at openjdk.org (Jaikiran Pai) Date: Sun, 4 Jan 2026 04:20:02 GMT Subject: RFR: 8373704: Improve "SocketException: Protocol family unavailable" message [v2] In-Reply-To: References: Message-ID: On Thu, 18 Dec 2025 16:39:06 GMT, Matthias Baesken wrote: >> In [JDK-8373676](https://bugs.openjdk.org/browse/JDK-8373676) >> we noticed a "SocketException: Protocol family unavailable" because of missing ipv6 support. We could improve this exception and tell that the ipv6 support is not available or something related. > > Matthias Baesken has updated the pull request incrementally with one additional commit since the last revision: > > Adjust the message as suggested by jaikiran Hello Matthias, this looks OK to me. Please run tier2 tests before integrating. ------------- Marked as reviewed by jpai (Reviewer). PR Review: https://git.openjdk.org/jdk/pull/28851#pullrequestreview-3624660969 From dholmes at openjdk.org Sun Jan 4 21:05:50 2026 From: dholmes at openjdk.org (David Holmes) Date: Sun, 4 Jan 2026 21:05:50 GMT Subject: RFR: 8374432: TimeoutResponseBodyTest.java#retriesEnabledForResponseFailure fails run with -Xcomp [v2] In-Reply-To: References: Message-ID: On Sat, 3 Jan 2026 02:08:21 GMT, SendaoYan wrote: >> Hi all, >> >> The test test/jdk/java/net/httpclient/TimeoutResponseBodyTest.java#retriesEnabledForResponseFailure was observed timed out when run with jvm option -Xcomp. The failure details shows in [JDK-8374432](https://bugs.openjdk.org/browse/JDK-8374432). Maybe it need more time for C2 to compile the httpclient classes than the default mixed mode. >> >> So this PR read the timeout factor from jtreg, and apply the timeout factor to `REQUEST_TIMEOUT` by multiply it. Change has been verified locally by run the related tests test/jdk/java/net/httpclient/TimeoutResponseHeaderTest.java and test/jdk/java/net/httpclient/TimeoutResponseBodyTest.java both with -Xmixed and -Xcomp. Test-fix only, no risk, > > SendaoYan has updated the pull request incrementally with one additional commit since the last revision: > > use "jdk.test.lib.Utils.adjustTimeout" I've updated the JBS report as we have seen further timeouts in related tests with no use of -Xcomp. ------------- PR Comment: https://git.openjdk.org/jdk/pull/29012#issuecomment-3708422500 From mbaesken at openjdk.org Mon Jan 5 08:28:03 2026 From: mbaesken at openjdk.org (Matthias Baesken) Date: Mon, 5 Jan 2026 08:28:03 GMT Subject: RFR: 8373704: Improve "SocketException: Protocol family unavailable" message [v2] In-Reply-To: References: Message-ID: On Thu, 18 Dec 2025 16:39:06 GMT, Matthias Baesken wrote: >> In [JDK-8373676](https://bugs.openjdk.org/browse/JDK-8373676) >> we noticed a "SocketException: Protocol family unavailable" because of missing ipv6 support. We could improve this exception and tell that the ipv6 support is not available or something related. > > Matthias Baesken has updated the pull request incrementally with one additional commit since the last revision: > > Adjust the message as suggested by jaikiran Thanks for the reviews ! I observed no issues in the tier2 tests . ------------- PR Comment: https://git.openjdk.org/jdk/pull/28851#issuecomment-3709398862 From mbaesken at openjdk.org Mon Jan 5 08:30:04 2026 From: mbaesken at openjdk.org (Matthias Baesken) Date: Mon, 5 Jan 2026 08:30:04 GMT Subject: Integrated: 8373704: Improve "SocketException: Protocol family unavailable" message In-Reply-To: References: Message-ID: On Tue, 16 Dec 2025 15:18:11 GMT, Matthias Baesken wrote: > In [JDK-8373676](https://bugs.openjdk.org/browse/JDK-8373676) > we noticed a "SocketException: Protocol family unavailable" because of missing ipv6 support. We could improve this exception and tell that the ipv6 support is not available or something related. This pull request has now been integrated. Changeset: 16303822 Author: Matthias Baesken URL: https://git.openjdk.org/jdk/commit/163038222a371c07aff8bce50eee55bb389104d0 Stats: 2 lines in 2 files changed: 0 ins; 0 del; 2 mod 8373704: Improve "SocketException: Protocol family unavailable" message Reviewed-by: lucy, jpai ------------- PR: https://git.openjdk.org/jdk/pull/28851 From vyazici at openjdk.org Mon Jan 5 10:02:58 2026 From: vyazici at openjdk.org (Volkan Yazici) Date: Mon, 5 Jan 2026 10:02:58 GMT Subject: RFR: 8374432: TimeoutResponseBodyTest.java#retriesEnabledForResponseFailure fails run with -Xcomp [v2] In-Reply-To: References: Message-ID: On Sat, 3 Jan 2026 02:08:21 GMT, SendaoYan wrote: >> Hi all, >> >> The test test/jdk/java/net/httpclient/TimeoutResponseBodyTest.java#retriesEnabledForResponseFailure was observed timed out when run with jvm option -Xcomp. The failure details shows in [JDK-8374432](https://bugs.openjdk.org/browse/JDK-8374432). Maybe it need more time for C2 to compile the httpclient classes than the default mixed mode. >> >> So this PR read the timeout factor from jtreg, and apply the timeout factor to `REQUEST_TIMEOUT` by multiply it. Change has been verified locally by run the related tests test/jdk/java/net/httpclient/TimeoutResponseHeaderTest.java and test/jdk/java/net/httpclient/TimeoutResponseBodyTest.java both with -Xmixed and -Xcomp. Test-fix only, no risk, > > SendaoYan has updated the pull request incrementally with one additional commit since the last revision: > > use "jdk.test.lib.Utils.adjustTimeout" Thanks so much, @sendaoYan! I've verified that `TimeoutResponseBodyTest` passes on 9c7e744eb35 with 50 repetitions with and without `-Xcomp` provided. ------------- Marked as reviewed by vyazici (Committer). PR Review: https://git.openjdk.org/jdk/pull/29012#pullrequestreview-3626203301 From mdonovan at openjdk.org Mon Jan 5 13:17:25 2026 From: mdonovan at openjdk.org (Matthew Donovan) Date: Mon, 5 Jan 2026 13:17:25 GMT Subject: RFR: 8249824: s/n/w/p/https/HttpsURLConnection/CloseKeepAliveCached.java uses @ignore w/o bugid [v6] In-Reply-To: References: Message-ID: On Thu, 14 Aug 2025 12:14:48 GMT, Mikhail Yankelevich wrote: >> * fully automated the test >> * removed the race condition >> * client on a thread and server on a thread options are now run together automatically > > Mikhail Yankelevich has updated the pull request incrementally with one additional commit since the last revision: > > addressing comments test/jdk/sun/net/www/protocol/https/HttpsURLConnection/CloseKeepAliveCached.java line 47: > 45: * @library /test/lib > 46: * > 47: * @run main/othervm -Dtest.separateThreads=false CloseKeepAliveCached false The `test.separateThreads` property is used to statically set `separateServerThread` on line 88, but then on line 230, you set `separateServerThread` based on `args[0]`. One of those could go away. I think each `@test` block should only need 1 `@run` instruction, right? Also, what is being tested differently if the server is in the "sub" thread versus when it is in the "main" thread? test/jdk/sun/net/www/protocol/https/HttpsURLConnection/CloseKeepAliveCached.java line 122: > 120: * Signal Client, we're ready for his connect. > 121: */ > 122: serverReady = true; Change this to a `CountDownLatch`? test/jdk/sun/net/www/protocol/https/HttpsURLConnection/CloseKeepAliveCached.java line 203: > 201: http.disconnect(); > 202: } catch (IOException ioex) { > 203: if (sslServerSocket != null) { Is there a reason for closing the server socket in the client thread? If not, `sslServerSocket` could be made local to `doServerSide()` ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/23469#discussion_r2661448695 PR Review Comment: https://git.openjdk.org/jdk/pull/23469#discussion_r2661405377 PR Review Comment: https://git.openjdk.org/jdk/pull/23469#discussion_r2661399349 From bpb at openjdk.org Mon Jan 5 20:49:23 2026 From: bpb at openjdk.org (Brian Burkhalter) Date: Mon, 5 Jan 2026 20:49:23 GMT Subject: RFR: 8337143: (fc, fs) Move filesystem-related native objects from libnio to libjava [v19] In-Reply-To: References: Message-ID: > This proposed change would move the native objects required for NIO file interaction from the libnio native library to the libjava native library on Linux, macOS, and Windows. Brian Burkhalter has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains 19 commits: - Merge - Merge - Merge - Merge - Merge - Merge - Merge - Merge - Merge - Merge - ... and 9 more: https://git.openjdk.org/jdk/compare/27dbdec2...c7446357 ------------- Changes: https://git.openjdk.org/jdk/pull/20317/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=20317&range=18 Stats: 1539 lines in 92 files changed: 774 ins; 668 del; 97 mod Patch: https://git.openjdk.org/jdk/pull/20317.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/20317/head:pull/20317 PR: https://git.openjdk.org/jdk/pull/20317 From duke at openjdk.org Mon Jan 5 23:31:28 2026 From: duke at openjdk.org (Josiah Noel) Date: Mon, 5 Jan 2026 23:31:28 GMT Subject: RFR: 8368695: Support 101 switching protocol in jdk.httpserver [v3] In-Reply-To: <2XnDIC5P7NMXCNo4s84B6DZrKTwEQidxHJtKn9-ayHQ=.519512fd-7d54-428a-bc9b-2a64a153b037@github.com> References: <2XnDIC5P7NMXCNo4s84B6DZrKTwEQidxHJtKn9-ayHQ=.519512fd-7d54-428a-bc9b-2a64a153b037@github.com> Message-ID: <8SLkhjVWhVQcYVc3X2GlG1Gt2VN7U7xGANcVU5VRxmU=.15b61806-afd3-460e-a09e-cc9d78057946@github.com> > Remaking the PR since I messed up the upstream merge on the other one. See (https://github.com/openjdk/jdk/pull/27751) for the bulk of the previous discussion > > - adds a flag to ExchangeImpl to signal whether the current request is a GET Upgrade request > - Adds a new `UpgradeInputStream`/`UpgradeOutputStream` to ensure that the server keeps track of when the upgraded request is closed > - on 101 response codes, `sendResponseHeaders` will not immediately close the output stream > - on 101 response codes, `sendResponseHeaders` will use an `UpgradeInputStream` Josiah Noel has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains 19 commits: - Merge branch 'openjdk:master' into JDK-8368695 - Merge branch 'master' into JDK-8368695 - Merge branch 'master' into JDK-8368695 - reduce diff - Merge remote-tracking branch 'upstream/master' into JDK-8368695 - Update SwitchingProtocolTest.java - Update SwitchingProtocolTest.java - Update SwitchingProtocolTest.java - add exception test - Create UpgradeOutputStream.java - ... and 9 more: https://git.openjdk.org/jdk/compare/de81d389...ac3b5379 ------------- Changes: https://git.openjdk.org/jdk/pull/27989/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=27989&range=02 Stats: 457 lines in 4 files changed: 449 ins; 2 del; 6 mod Patch: https://git.openjdk.org/jdk/pull/27989.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/27989/head:pull/27989 PR: https://git.openjdk.org/jdk/pull/27989 From jpai at openjdk.org Tue Jan 6 06:30:08 2026 From: jpai at openjdk.org (Jaikiran Pai) Date: Tue, 6 Jan 2026 06:30:08 GMT Subject: RFR: 8373515: Migrate "test/jdk/java/net/httpclient/" to null-safe "SimpleSSLContext" methods [v4] In-Reply-To: <91z1GserVQHgwJNfH6VWSSERKpd7qtyAJL7dY2Ynh24=.da80636c-9d89-4467-985d-6f28fd3d63cc@github.com> References: <91z1GserVQHgwJNfH6VWSSERKpd7qtyAJL7dY2Ynh24=.da80636c-9d89-4467-985d-6f28fd3d63cc@github.com> Message-ID: <4lwNtk0KLDVIiqe9p8aYaUDMTse9boXuJcF2G9hJHGo=.9597ff45-3da9-4865-8a87-084b5984dac1@github.com> On Thu, 18 Dec 2025 13:53:15 GMT, Volkan Yazici wrote: >> Migrates `test/jdk/java/net/httpclient/` to null-safe `SimpleSSLContext` methods introduced in [JDK-8372661], which is a prerequisite for this change set. >> >> [JDK-8372661]: https://bugs.openjdk.org/browse/JDK-8372661 > > Volkan Yazici has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains six commits: > > - Merge remote-tracking branch 'upstream/master' into simpleSslHc > - Merge remote-tracking branch 'upstream/master' into simpleSslHc > - Make sure `get()` returns the same instance > - Restore `test/jdk/java/net/httpclient/` changes > - Reverted all changes and only kept `SimpleSSLContext` enhancements > - Overhaul `SimpleSSLContext` and its usages test/jdk/java/net/httpclient/ALPNProxyFailureTest.java line 47: > 45: public class ALPNProxyFailureTest extends ALPNFailureTest { > 46: > 47: private static final SSLContext context = SimpleSSLContext.findSSLContext(); Hello Volkan, there seems to be an oversight here - as far as I can see, the call to `SSLContext.setDefault(context)` is no longer being done after this change. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/28771#discussion_r2663789227 From jpai at openjdk.org Tue Jan 6 06:47:14 2026 From: jpai at openjdk.org (Jaikiran Pai) Date: Tue, 6 Jan 2026 06:47:14 GMT Subject: RFR: 8373515: Migrate "test/jdk/java/net/httpclient/" to null-safe "SimpleSSLContext" methods [v4] In-Reply-To: <91z1GserVQHgwJNfH6VWSSERKpd7qtyAJL7dY2Ynh24=.da80636c-9d89-4467-985d-6f28fd3d63cc@github.com> References: <91z1GserVQHgwJNfH6VWSSERKpd7qtyAJL7dY2Ynh24=.da80636c-9d89-4467-985d-6f28fd3d63cc@github.com> Message-ID: On Thu, 18 Dec 2025 13:53:15 GMT, Volkan Yazici wrote: >> Migrates `test/jdk/java/net/httpclient/` to null-safe `SimpleSSLContext` methods introduced in [JDK-8372661], which is a prerequisite for this change set. >> >> [JDK-8372661]: https://bugs.openjdk.org/browse/JDK-8372661 > > Volkan Yazici has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains six commits: > > - Merge remote-tracking branch 'upstream/master' into simpleSslHc > - Merge remote-tracking branch 'upstream/master' into simpleSslHc > - Make sure `get()` returns the same instance > - Restore `test/jdk/java/net/httpclient/` changes > - Reverted all changes and only kept `SimpleSSLContext` enhancements > - Overhaul `SimpleSSLContext` and its usages Thank you for doing this cleanup. Looks simple but is involved because of the number of places this change was required. Apart from one issue to a test change, that I added as a review comment, the rest looks good to me. ------------- PR Comment: https://git.openjdk.org/jdk/pull/28771#issuecomment-3713347821 From jpai at openjdk.org Tue Jan 6 06:50:51 2026 From: jpai at openjdk.org (Jaikiran Pai) Date: Tue, 6 Jan 2026 06:50:51 GMT Subject: RFR: 8373538: Migrate all tests to null-safe "SimpleSSLContext" methods [v2] In-Reply-To: References: Message-ID: On Fri, 19 Dec 2025 17:37:23 GMT, Volkan Yazici wrote: >> 1. [JDK-8372661] introduced null-safe static factory methods to `SimpleSSLContext` >> 2. [JDK-8373515] migrated `test/jdk/java/net/httpclient/` to these new methods >> 3. [JDK-8373537] migrated `test/jdk/com/sun/net/httpserver/` to these new methods >> 4. This PR migrates all remaining `SimpleSSLContext` usages, *and* removes nullable `SimpleSSLContext` factory methods >> >> [JDK-8372661]: https://bugs.openjdk.org/browse/JDK-8372661 >> [JDK-8373515]: https://bugs.openjdk.org/browse/JDK-8373515 >> [JDK-8373537]: https://bugs.openjdk.org/browse/JDK-8373537 > > Volkan Yazici has updated the pull request incrementally with one additional commit since the last revision: > > Remove wildcard imports This looks good to me. ------------- Marked as reviewed by jpai (Reviewer). PR Review: https://git.openjdk.org/jdk/pull/28905#pullrequestreview-3629653398 From vyazici at openjdk.org Tue Jan 6 09:01:22 2026 From: vyazici at openjdk.org (Volkan Yazici) Date: Tue, 6 Jan 2026 09:01:22 GMT Subject: RFR: 8373515: Migrate "test/jdk/java/net/httpclient/" to null-safe "SimpleSSLContext" methods [v5] In-Reply-To: References: Message-ID: > Migrates `test/jdk/java/net/httpclient/` to null-safe `SimpleSSLContext` methods introduced in [JDK-8372661], which is a prerequisite for this change set. > > [JDK-8372661]: https://bugs.openjdk.org/browse/JDK-8372661 Volkan Yazici has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains eight commits: - Merge remote-tracking branch 'upstream/master' into simpleSslHc - Restore incorrectly removed `SSLContext::setDefault` in `ALPNProxyFailureTest` - Merge remote-tracking branch 'upstream/master' into simpleSslHc - Merge remote-tracking branch 'upstream/master' into simpleSslHc - Make sure `get()` returns the same instance - Restore `test/jdk/java/net/httpclient/` changes - Reverted all changes and only kept `SimpleSSLContext` enhancements - Overhaul `SimpleSSLContext` and its usages ------------- Changes: https://git.openjdk.org/jdk/pull/28771/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=28771&range=04 Stats: 974 lines in 179 files changed: 53 ins; 662 del; 259 mod Patch: https://git.openjdk.org/jdk/pull/28771.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/28771/head:pull/28771 PR: https://git.openjdk.org/jdk/pull/28771 From vyazici at openjdk.org Tue Jan 6 09:01:25 2026 From: vyazici at openjdk.org (Volkan Yazici) Date: Tue, 6 Jan 2026 09:01:25 GMT Subject: RFR: 8373515: Migrate "test/jdk/java/net/httpclient/" to null-safe "SimpleSSLContext" methods [v4] In-Reply-To: <4lwNtk0KLDVIiqe9p8aYaUDMTse9boXuJcF2G9hJHGo=.9597ff45-3da9-4865-8a87-084b5984dac1@github.com> References: <91z1GserVQHgwJNfH6VWSSERKpd7qtyAJL7dY2Ynh24=.da80636c-9d89-4467-985d-6f28fd3d63cc@github.com> <4lwNtk0KLDVIiqe9p8aYaUDMTse9boXuJcF2G9hJHGo=.9597ff45-3da9-4865-8a87-084b5984dac1@github.com> Message-ID: On Tue, 6 Jan 2026 06:26:35 GMT, Jaikiran Pai wrote: >> Volkan Yazici has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains six commits: >> >> - Merge remote-tracking branch 'upstream/master' into simpleSslHc >> - Merge remote-tracking branch 'upstream/master' into simpleSslHc >> - Make sure `get()` returns the same instance >> - Restore `test/jdk/java/net/httpclient/` changes >> - Reverted all changes and only kept `SimpleSSLContext` enhancements >> - Overhaul `SimpleSSLContext` and its usages > > test/jdk/java/net/httpclient/ALPNProxyFailureTest.java line 47: > >> 45: public class ALPNProxyFailureTest extends ALPNFailureTest { >> 46: >> 47: private static final SSLContext context = SimpleSSLContext.findSSLContext(); > > Hello Volkan, there seems to be an oversight here - as far as I can see, the call to `SSLContext.setDefault(context)` is no longer being done after this change. Doh! :facepalm: Fixed in 3204e85f57e. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/28771#discussion_r2664167892 From jpai at openjdk.org Tue Jan 6 09:12:18 2026 From: jpai at openjdk.org (Jaikiran Pai) Date: Tue, 6 Jan 2026 09:12:18 GMT Subject: RFR: 8373515: Migrate "test/jdk/java/net/httpclient/" to null-safe "SimpleSSLContext" methods [v5] In-Reply-To: References: Message-ID: On Tue, 6 Jan 2026 09:01:22 GMT, Volkan Yazici wrote: >> Migrates `test/jdk/java/net/httpclient/` to null-safe `SimpleSSLContext` methods introduced in [JDK-8372661], which is a prerequisite for this change set. >> >> [JDK-8372661]: https://bugs.openjdk.org/browse/JDK-8372661 > > Volkan Yazici has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains eight commits: > > - Merge remote-tracking branch 'upstream/master' into simpleSslHc > - Restore incorrectly removed `SSLContext::setDefault` in `ALPNProxyFailureTest` > - Merge remote-tracking branch 'upstream/master' into simpleSslHc > - Merge remote-tracking branch 'upstream/master' into simpleSslHc > - Make sure `get()` returns the same instance > - Restore `test/jdk/java/net/httpclient/` changes > - Reverted all changes and only kept `SimpleSSLContext` enhancements > - Overhaul `SimpleSSLContext` and its usages Thank you for the update. This looks good to me. ------------- Marked as reviewed by jpai (Reviewer). PR Review: https://git.openjdk.org/jdk/pull/28771#pullrequestreview-3630065748 From vyazici at openjdk.org Tue Jan 6 10:22:10 2026 From: vyazici at openjdk.org (Volkan Yazici) Date: Tue, 6 Jan 2026 10:22:10 GMT Subject: RFR: 8373515: Migrate "test/jdk/java/net/httpclient/" to null-safe "SimpleSSLContext" methods [v4] In-Reply-To: References: <91z1GserVQHgwJNfH6VWSSERKpd7qtyAJL7dY2Ynh24=.da80636c-9d89-4467-985d-6f28fd3d63cc@github.com> Message-ID: On Tue, 6 Jan 2026 06:44:59 GMT, Jaikiran Pai wrote: >> Volkan Yazici has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains six commits: >> >> - Merge remote-tracking branch 'upstream/master' into simpleSslHc >> - Merge remote-tracking branch 'upstream/master' into simpleSslHc >> - Make sure `get()` returns the same instance >> - Restore `test/jdk/java/net/httpclient/` changes >> - Reverted all changes and only kept `SimpleSSLContext` enhancements >> - Overhaul `SimpleSSLContext` and its usages > > Thank you for doing this cleanup. Looks simple but is involved because of the number of places this change was required. Apart from one issue to a test change, that I added as a review comment, the rest looks good to me. Thanks so much for the review @jaikiran. All `test/jdk/java/net/httpclient/` tests pass on several platforms using b8544bbff7e. ------------- PR Comment: https://git.openjdk.org/jdk/pull/28771#issuecomment-3714105562 From vyazici at openjdk.org Tue Jan 6 10:24:20 2026 From: vyazici at openjdk.org (Volkan Yazici) Date: Tue, 6 Jan 2026 10:24:20 GMT Subject: Integrated: 8373515: Migrate "test/jdk/java/net/httpclient/" to null-safe "SimpleSSLContext" methods In-Reply-To: References: Message-ID: On Thu, 11 Dec 2025 18:49:12 GMT, Volkan Yazici wrote: > Migrates `test/jdk/java/net/httpclient/` to null-safe `SimpleSSLContext` methods introduced in [JDK-8372661], which is a prerequisite for this change set. > > [JDK-8372661]: https://bugs.openjdk.org/browse/JDK-8372661 This pull request has now been integrated. Changeset: 3a80c639 Author: Volkan Yazici URL: https://git.openjdk.org/jdk/commit/3a80c639d804a0697b8eb477fe4c96407709449b Stats: 974 lines in 179 files changed: 53 ins; 662 del; 259 mod 8373515: Migrate "test/jdk/java/net/httpclient/" to null-safe "SimpleSSLContext" methods Reviewed-by: jpai ------------- PR: https://git.openjdk.org/jdk/pull/28771 From sshivang at openjdk.org Tue Jan 6 11:08:34 2026 From: sshivang at openjdk.org (Shivangi Gupta) Date: Tue, 6 Jan 2026 11:08:34 GMT Subject: [jdk26] RFR: 8372661: Add a null-safe static factory method to "jdk.test.lib.net.SimpleSSLContext" Message-ID: 8372661: Add a null-safe static factory method to "jdk.test.lib.net.SimpleSSLContext" Straight Backport ------------- Commit messages: - Backport 629e4ac6f45c87898f6a014f28a443c800413869 Changes: https://git.openjdk.org/jdk/pull/29064/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=29064&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8372661 Stats: 95 lines in 1 file changed: 51 ins; 5 del; 39 mod Patch: https://git.openjdk.org/jdk/pull/29064.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/29064/head:pull/29064 PR: https://git.openjdk.org/jdk/pull/29064 From sshivang at openjdk.org Tue Jan 6 11:08:34 2026 From: sshivang at openjdk.org (Shivangi Gupta) Date: Tue, 6 Jan 2026 11:08:34 GMT Subject: [jdk26] RFR: 8372661: Add a null-safe static factory method to "jdk.test.lib.net.SimpleSSLContext" In-Reply-To: References: Message-ID: <5aVQ24ZshlttTck85Da1nc1JzyxzvLB4qOFjFnbhd-w=.5750aebe-734c-4102-8324-ff1a887d0199@github.com> On Tue, 6 Jan 2026 11:00:59 GMT, Shivangi Gupta wrote: > 8372661: Add a null-safe static factory method to "jdk.test.lib.net.SimpleSSLContext" > Straight Backport @dfuch Can you please review this? ------------- PR Comment: https://git.openjdk.org/jdk/pull/29064#issuecomment-3714286788 From sshivang at openjdk.org Tue Jan 6 14:49:54 2026 From: sshivang at openjdk.org (Shivangi Gupta) Date: Tue, 6 Jan 2026 14:49:54 GMT Subject: [jdk26] RFR: 8372661: Add a null-safe static factory method to "jdk.test.lib.net.SimpleSSLContext" In-Reply-To: References: Message-ID: On Tue, 6 Jan 2026 11:00:59 GMT, Shivangi Gupta wrote: > 8372661: Add a null-safe static factory method to "jdk.test.lib.net.SimpleSSLContext" > Straight Backport @dfuch Can you please review this? ------------- PR Comment: https://git.openjdk.org/jdk/pull/29064#issuecomment-3714980944 From jpai at openjdk.org Tue Jan 6 15:07:37 2026 From: jpai at openjdk.org (Jaikiran Pai) Date: Tue, 6 Jan 2026 15:07:37 GMT Subject: [jdk26] RFR: 8372661: Add a null-safe static factory method to "jdk.test.lib.net.SimpleSSLContext" In-Reply-To: References: Message-ID: On Tue, 6 Jan 2026 11:00:59 GMT, Shivangi Gupta wrote: > 8372661: Add a null-safe static factory method to "jdk.test.lib.net.SimpleSSLContext" > Straight Backport Hello Shivangi, I will talk to Volkan tomorrow to decide if we should backport this or do it at a later date. ------------- PR Comment: https://git.openjdk.org/jdk/pull/29064#issuecomment-3715049162