> 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 ------------- Changes: - all: https://git.openjdk.org/jdk/pull/23515/files - new: https://git.openjdk.org/jdk/pull/23515/files/acf81c1a..18aaa85e Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=23515&range=01 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=23515&range=00-01 Stats: 5 lines in 1 file changed: 0 ins; 1 del; 4 mod Patch: https://git.openjdk.org/jdk/pull/23515.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/23515/head:pull/23515 PR: https://git.openjdk.org/jdk/pull/23515