On Tue, 11 Feb 2025 10:03:25 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.
>
> Daniel Fuchs has updated the pull request incrementally with one additional 
> commit since the last revision:
> 
>   Review feedback

These changes look reasonable to me.

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

Marked as reviewed by jpai (Reviewer).

PR Review: https://git.openjdk.org/jdk/pull/23515#pullrequestreview-2608296306

Reply via email to