Integrated: 8317808: HTTP/2 stream cancelImpl may leave subscriber registered

Daniel Fuchs dfuchs at openjdk.org
Fri Oct 13 14:39:18 UTC 2023


On Wed, 11 Oct 2023 10:25:28 GMT, Daniel Fuchs <dfuchs at openjdk.org> wrote:

> Some of the ThrowingSubscriberXxx tests (typically those that use a streaming body) have been observed failing intermittently (though rarely) in timeout. The error message printed at the end showed that some HTTP/2 stream subscribers had not been properly deregistered when an exception was thrown in GET_BODY.
> 
> The issue appears to be a race condition between `cancelImpl` and `schedule` where the scheduler `sched` may get stopped before the subscriber is exceptionally completed.
> 
> A simple fix is to ensure that `cancelImpl` will complete the subscriber, if needed.

This pull request has now been integrated.

Changeset: 6273ab97
Author:    Daniel Fuchs <dfuchs at openjdk.org>
URL:       https://git.openjdk.org/jdk/commit/6273ab97dc1a0d3c1f51ba94694d9594dd7593d4
Stats:     29 lines in 4 files changed: 22 ins; 4 del; 3 mod

8317808: HTTP/2 stream cancelImpl may leave subscriber registered

Reviewed-by: michaelm, djelinski

-------------

PR: https://git.openjdk.org/jdk/pull/16144


More information about the net-dev mailing list