RFR: 8184166: SortedList does not free up memory
Andy Goryachev
angorya at openjdk.org
Wed Dec 17 23:32:12 UTC 2025
On Sun, 7 Dec 2025 01:36:02 GMT, Cormac Redmond <duke at openjdk.org> wrote:
> Fix SortedList memory leak by clearing unused entries in the internal array when the source list shrinks. Also nullify tempElement.e after use,
>
> Adding "--add-opens=javafx.base/javafx.collections.transformation=ALL-UNNAMED" to allow reflection access from tests.
modules/javafx.base/src/main/java/javafx/collections/transformation/SortedList.java line 280:
> 278:
> 279: // Null out out-of-range array elements to avoid maintaining object references
> 280: for (int i = size; i < sorted.length; i++) {
Don't we need to null the unused entries only when the `sorted` array shrinks (i.e. when the `size` is reduced)?
so all we do is to handle L259 case `if (c.wasRemoved())` since everywhere else the references are null'ed (L379, L388)?
modules/javafx.base/src/test/addExports line 14:
> 12: --add-opens javafx.base/javafx.beans.value=ALL-UNNAMED
> 13: --add-opens=javafx.base/javafx.collections.transformation=ALL-UNNAMED
> 14: #
we probably should add a newline char at the end of L14
-------------
PR Review Comment: https://git.openjdk.org/jfx/pull/2000#discussion_r2628961363
PR Review Comment: https://git.openjdk.org/jfx/pull/2000#discussion_r2628963800
More information about the openjfx-dev
mailing list