JDK-8295809 : TreeTableViewSkin: memory leak when changing skin
  • Type: Bug
  • Component: javafx
  • Sub-Component: controls
  • Priority: P3
  • Status: Resolved
  • Resolution: Fixed
  • Submitted: 2022-10-21
  • Updated: 2022-12-12
  • Resolved: 2022-12-08
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.
Other
openjfx20 b11Fixed
Related Reports
Blocks :  
Relates :  
Relates :  
Description
as determined by SkinMemoryLeakTest (remove line 180) and a leak tester 
https://github.com/andy-goryachev-oracle/Test/blob/main/src/goryachev/apps/LeakTest.java

caused by:
- adding and not removing listeners
- adding and not removing event handlers/filters
- adding and not removing cell factory
- holding unnecessary instance in TreeTableViewSkin.treeTableViewSkin // test-only

NOTES:
1. this fix requires JDK-8294809 ListenerHelper and JDK-8295806 TableViewSkin.
2. there were more memory leaks in this skin than detected by SkinMemoryLeakTest, probably because of cell factory (?).  A manual test using LeakTest shows that there are no memory leaks after a) replacing skin, b) moving the components to a new window, and c) removing all the components from the window. 
Comments
Changeset: 6abbe080 Author: Andy Goryachev <angorya@openjdk.org> Date: 2022-12-08 16:04:11 +0000 URL: https://git.openjdk.org/jfx/commit/6abbe0803456ad648117b8e72deeeeced7cb5231
08-12-2022

A pull request was submitted for review. URL: https://git.openjdk.org/jfx/pull/931 Date: 2022-10-24 19:06:26 +0000
05-12-2022