RFR: 8252811: The list of cells in a VirtualFlow is cleared every time the number of items changes

Jose Pereda jpereda at openjdk.java.net
Tue Sep 8 12:01:21 UTC 2020

This PR removes an old fix (RT-13965/JDK-8113318), which was applied in 2011 to avoid a memory leak in
`VirtualFlow::sheetChildren`, after new items were constantly added.

With the current VirtualFlow implementation, there are in place the necessary methods that take care of cleaning or
adding new cells to the sheetChildren list, and such memory leak doesn't exist, the size remains constant when new
items are added or removed (see included unity test).

The call to `sheetchildren.clear()`, on the contrary, has a big impact in performance and CPU usage, when new items are
constantly added, as has been reported in JDK-8185886/#108.


Commit messages:
 - Add test to verify the sheet children size remains constant when adding or removing new items
 - Remove old fix RT-13965

Changes: https://git.openjdk.java.net/jfx/pull/298/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jfx&pr=298&range=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8252811
  Stats: 38 lines in 2 files changed: 32 ins; 6 del; 0 mod
  Patch: https://git.openjdk.java.net/jfx/pull/298.diff
  Fetch: git fetch https://git.openjdk.java.net/jfx pull/298/head:pull/298

PR: https://git.openjdk.java.net/jfx/pull/298

More information about the openjfx-dev mailing list