RFR: JDK-8255603: Memory/Performance regression after JDK-8210985

Christoph Langer clanger at openjdk.java.net
Thu Oct 29 15:20:55 UTC 2020


It seems that there exists a memory/performance regression that was introduced with JDK-8210985: Update the default SSL session cache size to 20480.

The idea to limit the maixmum SSL session cache size by itself is good. Unfortunately, as per the current implementation of sun.security.util.MemoryCache, it also modifies the initial size of the LinkedHashMap that is backing the cache to initialize with more than the maximum size.

I suggest to restore the original behavior that initializes with an initialCapacity of 1 in most cases. That was true when before JDK-8210985, the property javax.net.ssl.sessionCacheSize was not set at all.
In case it was set, the initial size would have been like now, (javax.net.ssl.sessionCacheSize / 0.75f) + 1, which still seems strange.

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

Commit messages:
 - Copyright year
 - JDK-8255603: Memory/Performance regression after JDK-8210985

Changes: https://git.openjdk.java.net/jdk/pull/937/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=937&range=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8255603
  Stats: 3 lines in 1 file changed: 0 ins; 1 del; 2 mod
  Patch: https://git.openjdk.java.net/jdk/pull/937.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/937/head:pull/937

PR: https://git.openjdk.java.net/jdk/pull/937



More information about the security-dev mailing list