On Fri, 7 Feb 2025 13:48:29 GMT, Daniel Fuchs <dfu...@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 <dfu...@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

Reply via email to