JDK-8351996 : Behavioral updates for ClassValue::remove
  • Type: Bug
  • Component: core-libs
  • Sub-Component: java.lang.invoke
  • Affected Version: 25
  • Priority: P3
  • Status: Resolved
  • Resolution: Fixed
  • Submitted: 2025-03-13
  • Updated: 2025-06-03
  • Resolved: 2025-05-15
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 25
25 b24Fixed
Related Reports
CSR :  
Causes :  
Causes :  
Relates :  
Relates :  
Description
The fix for stale values from ClassValue::remove in JDK-8351045 breaks backward compatibility and contracts that calls to remove from computeValue should be no-op. After investigation, a better solution is to update the remove implementation to force recomputation only on other threads.
Comments
Changeset: 9223ed78 Branch: master Author: Chen Liang <liach@openjdk.org> Date: 2025-05-15 20:32:02 +0000 URL: https://git.openjdk.org/jdk/commit/9223ed788a53820dcc1e285a6e0df0c97b05fb09
15-05-2025

A pull request was submitted for review. Branch: master URL: https://git.openjdk.org/jdk/pull/24043 Date: 2025-03-14 00:01:21 +0000
19-03-2025