RFR: 8308310: HttpClient: Avoid logging or locking from within synchronized blocks [v8]

Daniel Fuchs dfuchs at openjdk.org
Wed May 24 12:42:07 UTC 2023


On Wed, 24 May 2023 12:35:05 GMT, Daniel Fuchs <dfuchs at openjdk.org> wrote:

>> test/jdk/java/net/httpclient/ManyRequests.java line 274:
>> 
>>> 272:             } catch (CompletionException e) {
>>> 273:                 if (!Platform.isWindows()) throw e;
>>> 274:                 if (LIMIT.get() < MAX_LIMIT) throw e;
>> 
>> Previously, `LIMIT.get()` was being compared against `MAX_COUNT`, because `REQUEST` was initialized (as `final`) to that value. Now it's being compared to `MAX_LIMIT`. Is this intentional?
>
> Yes. I think the previous behaviour was buggy. The idea is to reduce concurrency if the underlying OS has trouble with too many concurrent connections.

What it says here is that if we already reduced the LIMIT once and it fails again we should fail.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/14038#discussion_r1204053958


More information about the net-dev mailing list