On Wed, 25 Oct 2023 08:44:48 GMT, Daniel Jeliński <[email protected]> wrote:
>> Conor Cleary has updated the pull request incrementally with one additional
>> commit since the last revision:
>>
>> 8309118: Add final response code check to incompleteRequestBodyReset
>
> src/java.net.http/share/classes/jdk/internal/net/http/Stream.java line 215:
>
>> 213: Log.logTrace("responseSubscriber.onComplete");
>> 214: if (debug.on()) debug.log("incoming: onComplete");
>> 215: if (inputQ.isEmpty()) sched.stop();
>
> I think you should remove all references to sched.stop() from this method;
> while adding `if (inputQ.isEmpty())` reduces the risk of races, there's still
> a small window where an incoming reset frame can be lost.
The only thing we could do with the reset after this point in the schedule()
method, if the reset had not yet been inserted into the inputQueue, is to
complete the `requestBodyCF` and this would have already been taken care of at
line 595 in incoming_reset. So I don't believe the scheduler would need to run
again after this line (or the other like it)
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/15664#discussion_r1371469922