java.lang.ThreadLocal.set() with null as an argument.
This call does not free the resources, and it may cause a memory leak.
It may happen because:ThreadLocal.set(null) finds a map associated with the current Thread. If there is no such a map, it will be createdmap.set(this, value), where this refers to instance of ThreadLocaljava.lang.ThreadLocal.remove() should be used to free the resources.
Example:
ThreadLocal<Integer> threadLocal = new ThreadLocal<>();
threadLocal.set(null);
After the quick-fix is applied:
threadLocal.remove();
New in 2023.2