On Wed, 28 Oct 2026 14:14:09 GMT, Roland Mesde <[email protected]> wrote:

>> This PR uses a shared per session family depth limit + per session depth 
>> value to enforce invalidation. This will remove the container's 
>> (ConcurrentLinkedQueue) strong references to the child sessions, which 
>> allows child sessions to be garbage collected when they are no longer 
>> reachable. The drawback is that the invalidation depth limit will be per 
>> family, so once a session is invalidated at the specified depth, all deeper 
>> sessions will be invalidated, not just its descendants.
>> 
>> Ran related tests on linux-x64, linux-aarch64, macos-aarch64 and windows-x64:
>> 
>> make test TEST=test/jdk/sun/security/ssl
>> make test TEST=test/jdk/javax/net/ssl
>> 
>> Results:
>> 
>> [windows-x64-specific-test.log](https://github.com/user-attachments/files/33689537/windows-x64-specific-test.log)
>> [windows-x64-specific-2-test.log](https://github.com/user-attachments/files/33689538/windows-x64-specific-2-test.log)
>> [macos-aarch64-specific-test.log](https://github.com/user-attachments/files/33689539/macos-aarch64-specific-test.log)
>> [macos-aarch64-specific-2-test.log](https://github.com/user-attachments/files/33689540/macos-aarch64-specific-2-test.log)
>> [linux-x64-specific-test.log](https://github.com/user-attachments/files/33689541/linux-x64-specific-test.log)
>> [linux-x64-specific-2-test.log](https://github.com/user-attachments/files/33689542/linux-x64-specific-2-test.log)
>> [linux-aarch64-specific-test.log](https://github.com/user-attachments/files/33689543/linux-aarch64-specific-test.log)
>> [linux-aarch64-specific-2-test.log](https://github.com/user-attachments/files/33689544/linux-aarch64-specific-2-test.log)
>> 
>> Low risk - the change is limited to SSLSessionImpl, its cache lookup and the 
>> ticket code. The worst case is an occasional extra full handshake.
>> 
>> ---------
>> - [x] I confirm that I make this contribution in accordance with the 
>> [OpenJDK Interim AI Policy](https://openjdk.org/legal/ai).
>
> Roland Mesde has updated the pull request incrementally with one additional 
> commit since the last revision:
> 
>   Add Invalidation Details to Comment

src/java.base/share/classes/sun/security/ssl/SSLSessionImpl.java line 826:

> 824:     }
> 825: 
> 826:     boolean isInvalid() {

I suggest to rename `isInvalid()` to `isInvalidated()`. I find having both 
`isInvalid()` and `isValid()` methods in `SSLSessionImpl` confusing.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/33447#discussion_r4403534057

Reply via email to