RFR: 8336926: jdk/internal/util/ReferencedKeyTest.java can fail with ConcurrentModificationException
Roger Riggs
rriggs at openjdk.org
Thu Aug 8 14:15:31 UTC 2024
On Wed, 7 Aug 2024 19:26:59 GMT, Roger Riggs <rriggs at openjdk.org> wrote:
> The original test fails intermittently, the reproducer failed consistently.
> With the fix, the failure was not observed in the test or reproducer.
>
> In jdk.internal.util.ReferencedKeyMap.entrySet() and toString() methods, avoid removing stale references that would modify the keyset while it is being iterated over.
> If GC removes the key, iterating or streaming over the keyset might get a ConcurrentModificationException.
The robustness of the non-collecting parts of the test as suggested in the Jira comments is covered by a new issue JDK-8338060.
-------------
PR Comment: https://git.openjdk.org/jdk/pull/20499#issuecomment-2275938107
More information about the core-libs-dev
mailing list