-
Bug
-
Resolution: Done
-
Major
-
None
-
None
-
None
If we set keepAliveTime to ThreadPoolExecutor, the thread will be terminated periodically and a new one will be created.
In Java's ThreadLocal, when the Thread terminates, the object becomes the target of gc.
However, ThreadLocalCache holds a reference to the Thread even if the Thread terminates. Additionally, the ByteBuffer in ThreadLocalData corresponding to the value of the Map<Thread, ThreadLocalData> also remains referenced and is not target to gc.
So, we have to remove Thread key when the thread terminated.
- blocks
-
WFLY-19360 java.lang.OutOfMemoryError: Direct buffer memory
- Resolved
- is duplicated by
-
UNDERTOW-2389 DefaultByteBufferPool leaks buffers for released threads
- Resolved
- is incorporated by
-
WFCORE-6862 CVE-2024-6162 CVE-2024-27316 Upgrade Undertow to 2.3.14.Final
- Resolved
- is related to
-
JBEAP-27063 [GSS](8.0.z) UNDERTOW-2389/2385 - DefaultByteBufferPool leaks buffers for released threads
- Closed
- relates to
-
JBEAP-27062 [GSS](7.4.z) UNDERTOW-2389/UNDERTOW-2385 - DefaultByteBufferPool leaks buffers for released threads
- Closed