On Wed, 12 Nov 2025 08:28:46 GMT, Daniel Jeliński <[email protected]> wrote:
>> Jaikiran Pai has updated the pull request incrementally with two additional
>> commits since the last revision:
>>
>> - mark jdk.internal.net.http.Http2Connection as Closable
>> - reduce number of concurrent requests
>
> src/java.net.http/share/classes/jdk/internal/net/http/Http2Connection.java
> line 1247:
>
>> 1245: */
>> 1246: final boolean isOpen() {
>> 1247: return this.connTerminator.terminationCause.get() == null &&
>> connection.channel().isOpen();
>
> Can we ever observe a situation where channel is not open but termination
> cause is not set?
>
> As far as I could tell, channel.isOpen only returns false after close() is
> called, and close() is only called from doTerminate after the termination
> cause is set. What am I missing?
A channel can be closed by the peer. So it may be closed even if close() has
not been called.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/28233#discussion_r2518154884