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

Daniel Fuchs dfuchs at openjdk.org
Wed May 24 11:17:02 UTC 2023


On Wed, 24 May 2023 11:05:03 GMT, Jaikiran Pai <jpai at openjdk.org> wrote:

>> Daniel Fuchs has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains 11 commits:
>> 
>>  - Merge branch 'master' into HttpClient-Logging-8308310
>>  - Merge branch 'master' into HttpClient-Logging-8308310
>>  - Fix whitespace
>>  - make stateLock final
>>  - Add debug traces to ExpectContinueTest.java
>>  - failedRef should be final
>>  - Align parameters
>>  - Update src/java.net.http/share/classes/jdk/internal/net/http/Http1Response.java
>>    
>>    Co-authored-by: Andrey Turbanov <turbanoff at gmail.com>
>>  - Update src/java.net.http/share/classes/jdk/internal/net/http/ConnectionPool.java
>>    
>>    Co-authored-by: Andrey Turbanov <turbanoff at gmail.com>
>>  - Update test/jdk/java/net/httpclient/AuthFilterCacheTest.java
>>    
>>    Co-authored-by: Andrey Turbanov <turbanoff at gmail.com>
>>  - ... and 1 more: https://git.openjdk.org/jdk/compare/c0c4d771...c5d2f1f2
>
> src/java.net.http/share/classes/jdk/internal/net/http/Http2Connection.java line 579:
> 
>> 577:         stateLock.lock();
>> 578:         try {
>> 579:             return finalStream;
> 
> Perhaps we can make `finalStream` volatile and remove the use of locks when accessing and setting it?

Looks doable

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

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


More information about the net-dev mailing list