Integrated: 8377712: ConstantPool of WeakReferenceKey is not deterministic in CDS archive
Ioi Lam
iklam at openjdk.org
Thu Feb 19 05:27:16 UTC 2026
On Wed, 11 Feb 2026 20:28:15 GMT, Ioi Lam <iklam at openjdk.org> wrote:
> We are seeing intermittent failures (12 times in Jan 2026) where the CDS archives generated in the JDK build is not deterministic.
>
> The symptom is that (perhaps due to the peculiarity of hash codes and memory addressing??) the constant pool entry for `ReferenceKey<?>` in the `WeakReferenceKey` class is not resolved when the failure happens. Probably it's due to a particular layout in the hashtable such that we have no collisions so the `WeakReferenceKey::equals()` method is never called.
>
> The fix is for the JVM to call a method in `WeakReferenceKey` to force this entry to be resolved.
This pull request has now been integrated.
Changeset: 33c9f20b
Author: Ioi Lam <iklam at openjdk.org>
URL: https://git.openjdk.org/jdk/commit/33c9f20bef05239ee016d980dc69a3d583ce8293
Stats: 42 lines in 4 files changed: 39 ins; 1 del; 2 mod
8377712: ConstantPool of WeakReferenceKey is not deterministic in CDS archive
Reviewed-by: liach, kvn
-------------
PR: https://git.openjdk.org/jdk/pull/29678
More information about the core-libs-dev
mailing list