Summary: | System Monitor leaks memory | ||
---|---|---|---|
Product: | [Applications] plasma-systemmonitor | Reporter: | Riccardo Robecchi <sephiroth_pk> |
Component: | general | Assignee: | KSysGuard Developers <ksysguard-bugs> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | ahiemstra, nate, onyxnz1, plasma-bugs |
Priority: | NOR | ||
Version: | 5.25.5 | ||
Target Milestone: | --- | ||
Platform: | Other | ||
OS: | Linux | ||
Latest Commit: | https://invent.kde.org/plasma/plasma-systemmonitor/commit/d8dc56057758a50b23c4a23521fbf534daf61e28 | Version Fixed In: | 5.27 |
Attachments: |
Screenshot
Screenshot Current A little later |
Thank you for the bug report! Please note that Plasma 5.25.5 is not supported for much longer by KDE; supported versions are 5.24, and 5.26 or newer. If at all possible please upgrade to a supported version and verify that the bug is still happening there. Created attachment 152963 [details]
Screenshot
version 5.26.0
It started leaking again on 5.26.0 for me as well, after a few days in which it stayed at a very low memory footprint (< 100 MB). Since this affects at least another user, I am marking this as "confirmed". *** Bug 460561 has been marked as a duplicate of this bug. *** So this only happens when running it for a long time? Or does it always happen after resuming from suspend? (In reply to Arjen Hiemstra from comment #5) > So this only happens when running it for a long time? Or does it always > happen after resuming from suspend? Always after a long time for me. Created attachment 154012 [details]
Current
Started at 137mb, gradual creep through the day.
Created attachment 154015 [details]
A little later
and still climbing, no suspend yet.
Git commit ebd169763aea87fa6203dc8f12ced639428525f4 by Arjen Hiemstra. Committed on 26/01/2023 at 13:57. Pushed by ahiemstra into branch 'master'. table: Workaround a memory leak in QQmlPropertyCache Apparently, the combination of a Connections object along with the QAbstractItemModel::layoutChanged() signal leads to a memory leak inside QQmlPropertyCache::createArgumentsObject(). To avoid that, put a proxy signal in between that Connections can connect to. The bug no longer exists in Qt 6 so this should be reverted after switching to Qt 6. M +2 -0 src/faces/applicationstable/contents/ui/ApplicationsTableView.qml M +2 -0 src/faces/processtable/contents/ui/ProcessTableView.qml M +2 -2 src/table/BaseCellDelegate.qml M +14 -0 src/table/BaseTableView.qml https://invent.kde.org/plasma/plasma-systemmonitor/commit/ebd169763aea87fa6203dc8f12ced639428525f4 Git commit d8dc56057758a50b23c4a23521fbf534daf61e28 by Arjen Hiemstra. Committed on 26/01/2023 at 14:16. Pushed by ahiemstra into branch 'Plasma/5.27'. table: Workaround a memory leak in QQmlPropertyCache Apparently, the combination of a Connections object along with the QAbstractItemModel::layoutChanged() signal leads to a memory leak inside QQmlPropertyCache::createArgumentsObject(). To avoid that, put a proxy signal in between that Connections can connect to. The bug no longer exists in Qt 6 so this should be reverted after switching to Qt 6. (cherry picked from commit ebd169763aea87fa6203dc8f12ced639428525f4) M +2 -0 src/faces/applicationstable/contents/ui/ApplicationsTableView.qml M +2 -0 src/faces/processtable/contents/ui/ProcessTableView.qml M +2 -2 src/table/BaseCellDelegate.qml M +14 -0 src/table/BaseTableView.qml https://invent.kde.org/plasma/plasma-systemmonitor/commit/d8dc56057758a50b23c4a23521fbf534daf61e28 |
Created attachment 152771 [details] Screenshot SUMMARY If I keep System Monitor open for a while (indicatively more than one day, suspending the notebook for the night), it starts leaking memory. In the last 30 minutes it leaked ~50 MB. It can get to very high values, as you can see from the screenshot. STEPS TO REPRODUCE 1. Open System Monitor. 2. Keep it open. OBSERVED RESULT Memory usage climbs up to very high levels. EXPECTED RESULT Memory usage stays constant. SOFTWARE/OS VERSIONS Linux: KDE neon KDE Plasma Version: 5.25.5 KDE Frameworks Version: 5.98.0 Qt Version: 5.15.6 ADDITIONAL INFORMATION