Integrated: 8349662: SSLTube SSLSubscriptionWrapper has potential races when switching subscriptions
Daniel Fuchs
dfuchs at openjdk.org
Tue Feb 11 12:13:19 UTC 2025
On Fri, 7 Feb 2025 13:48:29 GMT, Daniel Fuchs <dfuchs at openjdk.org> wrote:
> Hi,
>
> Please find here a change that fixes a potential race condition in SSLTube.SSLSubscriptionWrapper.
> Typically the race may get triggered if the demand increased by request() is not exhausted by the time
> the subscription is switched by setSubscription.
>
> Some synchronization is required to present a consistent view of the subscripton state, so that pending demand can be consistently transferred to the new the subscription.
>
> This mostly affects HTTP/1.1 over TLS since each new exchange will cause the subscription to be switched to the new exchange. The race condition is elusive and hard to reproduce. when it occurs, it mostly causes tests to fail in jtreg timeout as the demand from upstream may not be transferred properly.
>
> Some additional logging has been added to the DigestEchoClient.java test class (which is used by DigestEchoClientSSL) to help diagnosability of intermittent failures in these tests.
This pull request has now been integrated.
Changeset: 5ee44c16
Author: Daniel Fuchs <dfuchs at openjdk.org>
URL: https://git.openjdk.org/jdk/commit/5ee44c1688fa6bfbf31d506696eefbf61de0e768
Stats: 144 lines in 3 files changed: 93 ins; 14 del; 37 mod
8349662: SSLTube SSLSubscriptionWrapper has potential races when switching subscriptions
Reviewed-by: jpai
-------------
PR: https://git.openjdk.org/jdk/pull/23515
More information about the net-dev
mailing list