Bug 428971 - System Monitor may get stuck while it loads Processes page
Summary: System Monitor may get stuck while it loads Processes page
Status: REPORTED
Alias: None
Product: plasma-systemmonitor
Classification: Applications
Component: general (show other bugs)
Version: unspecified
Platform: Other Linux
: NOR normal
Target Milestone: ---
Assignee: KSysGuard Developers
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2020-11-11 12:52 UTC by Vlad Zahorodnii
Modified: 2021-08-26 08:31 UTC (History)
6 users (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments
system monitor after a couple of minutes (44.08 KB, image/png)
2020-11-11 12:52 UTC, Vlad Zahorodnii
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Vlad Zahorodnii 2020-11-11 12:52:32 UTC
Created attachment 133229 [details]
system monitor after a couple of minutes

SUMMARY


STEPS TO REPRODUCE
1. Start System Monitor
2. Wait for the Overview page to load
3. Click "Processes" page in the sidebar and immediately click "History" page
4. Wait for the History page to get loaded
5. Click "Processes" page again

OBSERVED RESULT
System Monitor never loads Processes tab

EXPECTED RESULT
Processes page gets loaded

SOFTWARE/OS VERSIONS
Windows: 
macOS: 
Linux/KDE Plasma: 
(available in About System)
KDE Plasma Version: 
KDE Frameworks Version: 
Qt Version: 

ADDITIONAL INFORMATION

Terminal output:

```
QML debugging is enabled. Only use this in a safe environment.
QDBusConnection::connect: object path '/plasma-systemmonitorrc' is not valid
Cyclic dependency detected between "file:///data/projects/usr/lib/qml/org/kde/kirigami.2/styles/org.kde.desktop.plasma/Units.qml" and "file:///data/projects/usr/lib/qml/org/kde/kirigami.2/styles/org.kde.desktop.plasma/Units.qml"
QCoreApplication::postEvent: Unexpected null receiver
file:///data/projects/usr/lib/qml/org/kde/newstuff/qml/QuestionAsker.qml:91:5: QML Connections: Cannot assign to non-existent property "onClosing"
qt.core.qabstractitemmodel.checkindex: Index QModelIndex(-1,-1,0x0,QObject(0x0)) is not valid (expected valid)
file:///data/projects/usr/lib/qml/org/kde/kirigami.2/private/globaltoolbar/PageRowGlobalToolBarUI.qml:65:9: QML RowLayout (parent or ancestor of QQuickLayoutAttached): Binding loop detected for property "maximumWidth"
file:///data/projects/usr/lib/qml/org/kde/kirigami.2/private/globaltoolbar/PageRowGlobalToolBarUI.qml:65:9: QML RowLayout (parent or ancestor of QQuickLayoutAttached): Binding loop detected for property "maximumWidth"
file:///data/projects/usr/lib/qml/org/kde/kirigami.2/private/globaltoolbar/PageRowGlobalToolBarUI.qml:65:9: QML RowLayout (parent or ancestor of QQuickLayoutAttached): Binding loop detected for property "maximumWidth"
file:///data/projects/usr/lib/qml/QtQuick/Controls.2/org.kde.desktop/ScrollView.qml:102:27: QML ScrollBar: Binding loop detected for property "visible"
org.kde.ksysguard.plugin.network: Helper process terminated abnormally!
org.kde.ksysguard.plugin.network: "The process doesn't have permission to open the capture source\n"
file::/main.qml:123:17: Unable to assign [undefined] to QString
file::/main.qml:124:17: Unable to assign [undefined] to QString
file::/main.qml:123:17: Unable to assign [undefined] to QString
file::/main.qml:124:17: Unable to assign [undefined] to QString
qt.core.qabstractitemmodel.checkindex: Index QModelIndex(-1,-1,0x0,QObject(0x0)) is not valid (expected valid)
qt.core.qabstractitemmodel.checkindex: Index QModelIndex(-1,-1,0x0,QObject(0x0)) is not valid (expected valid)
qt.core.qabstractitemmodel.checkindex: Index QModelIndex(-1,-1,0x0,QObject(0x0)) is not valid (expected valid)
qt.core.qabstractitemmodel.checkindex: Index QModelIndex(-1,-1,0x0,QObject(0x0)) is not valid (expected valid)
qt.core.qabstractitemmodel.checkindex: Index QModelIndex(-1,-1,0x0,QObject(0x0)) is not valid (expected valid)
qt.core.qabstractitemmodel.checkindex: Index QModelIndex(-1,-1,0x0,QObject(0x0)) is not valid (expected valid)
qt.core.qabstractitemmodel.checkindex: Index QModelIndex(-1,-1,0x0,QObject(0x0)) is not valid (expected valid)
qt.core.qabstractitemmodel.checkindex: Index QModelIndex(-1,-1,0x0,QObject(0x0)) is not valid (expected valid)
qt.core.qabstractitemmodel.checkindex: Index QModelIndex(-1,-1,0x0,QObject(0x0)) is not valid (expected valid)
qt.core.qabstractitemmodel.checkindex: Index QModelIndex(-1,-1,0x0,QObject(0x0)) is not valid (expected valid)
qt.core.qabstractitemmodel.checkindex: Index QModelIndex(-1,-1,0x0,QObject(0x0)) is not valid (expected valid)
qt.core.qabstractitemmodel.checkindex: Index QModelIndex(-1,-1,0x0,QObject(0x0)) is not valid (expected valid)
qt.core.qabstractitemmodel.checkindex: Index QModelIndex(-1,-1,0x0,QObject(0x0)) is not valid (expected valid)
qt.core.qabstractitemmodel.checkindex: Index QModelIndex(-1,-1,0x0,QObject(0x0)) is not valid (expected valid)
qt.core.qabstractitemmodel.checkindex: Index QModelIndex(-1,-1,0x0,QObject(0x0)) is not valid (expected valid)
qt.core.qabstractitemmodel.checkindex: Index QModelIndex(-1,-1,0x0,QObject(0x0)) is not valid (expected valid)
qt.core.qabstractitemmodel.checkindex: Index QModelIndex(-1,-1,0x0,QObject(0x0)) is not valid (expected valid)
qt.core.qabstractitemmodel.checkindex: Index QModelIndex(-1,-1,0x0,QObject(0x0)) is not valid (expected valid)
qt.core.qabstractitemmodel.checkindex: Index QModelIndex(-1,-1,0x0,QObject(0x0)) is not valid (expected valid)
qt.core.qabstractitemmodel.checkindex: Index QModelIndex(-1,-1,0x0,QObject(0x0)) is not valid (expected valid)
qt.core.qabstractitemmodel.checkindex: Index QModelIndex(-1,-1,0x0,QObject(0x0)) is not valid (expected valid)
qt.core.qabstractitemmodel.checkindex: Index QModelIndex(-1,-1,0x0,QObject(0x0)) is not valid (expected valid)
qt.core.qabstractitemmodel.checkindex: Index QModelIndex(-1,-1,0x0,QObject(0x0)) is not valid (expected valid)
qt.core.qabstractitemmodel.checkindex: Index QModelIndex(-1,-1,0x0,QObject(0x0)) is not valid (expected valid)
qt.core.qabstractitemmodel.checkindex: Index QModelIndex(-1,-1,0x0,QObject(0x0)) is not valid (expected valid)
qt.core.qabstractitemmodel.checkindex: Index QModelIndex(-1,-1,0x0,QObject(0x0)) is not valid (expected valid)
qt.core.qabstractitemmodel.checkindex: Index QModelIndex(-1,-1,0x0,QObject(0x0)) is not valid (expected valid)
qt.core.qabstractitemmodel.checkindex: Index QModelIndex(-1,-1,0x0,QObject(0x0)) is not valid (expected valid)
qt.core.qabstractitemmodel.checkindex: Index QModelIndex(-1,-1,0x0,QObject(0x0)) is not valid (expected valid)
qt.core.qabstractitemmodel.checkindex: Index QModelIndex(-1,-1,0x0,QObject(0x0)) is not valid (expected valid)
qt.core.qabstractitemmodel.checkindex: Index QModelIndex(-1,-1,0x0,QObject(0x0)) is not valid (expected valid)
qt.core.qabstractitemmodel.checkindex: Index QModelIndex(-1,-1,0x0,QObject(0x0)) is not valid (expected valid)
qt.core.qabstractitemmodel.checkindex: Index QModelIndex(-1,-1,0x0,QObject(0x0)) is not valid (expected valid)
qt.core.qabstractitemmodel.checkindex: Index QModelIndex(-1,-1,0x0,QObject(0x0)) is not valid (expected valid)
qt.core.qabstractitemmodel.checkindex: Index QModelIndex(-1,-1,0x0,QObject(0x0)) is not valid (expected valid)
qt.core.qabstractitemmodel.checkindex: Index QModelIndex(-1,-1,0x0,QObject(0x0)) is not valid (expected valid)
qt.core.qabstractitemmodel.checkindex: Index QModelIndex(-1,-1,0x0,QObject(0x0)) is not valid (expected valid)
qt.core.qabstractitemmodel.checkindex: Index QModelIndex(-1,-1,0x0,QObject(0x0)) is not valid (expected valid)
qt.core.qabstractitemmodel.checkindex: Index QModelIndex(-1,-1,0x0,QObject(0x0)) is not valid (expected valid)
qt.core.qabstractitemmodel.checkindex: Index QModelIndex(-1,-1,0x0,QObject(0x0)) is not valid (expected valid)
qt.core.qabstractitemmodel.checkindex: Index QModelIndex(-1,-1,0x0,QObject(0x0)) is not valid (expected valid)
qt.core.qabstractitemmodel.checkindex: Index QModelIndex(-1,-1,0x0,QObject(0x0)) is not valid (expected valid)
qt.core.qabstractitemmodel.checkindex: Index QModelIndex(-1,-1,0x0,QObject(0x0)) is not valid (expected valid)
qt.core.qabstractitemmodel.checkindex: Index QModelIndex(-1,-1,0x0,QObject(0x0)) is not valid (expected valid)
qt.core.qabstractitemmodel.checkindex: Index QModelIndex(-1,-1,0x0,QObject(0x0)) is not valid (expected valid)
qt.core.qabstractitemmodel.checkindex: Index QModelIndex(-1,-1,0x0,QObject(0x0)) is not valid (expected valid)
qt.core.qabstractitemmodel.checkindex: Index QModelIndex(-1,-1,0x0,QObject(0x0)) is not valid (expected valid)
qt.core.qabstractitemmodel.checkindex: Index QModelIndex(-1,-1,0x0,QObject(0x0)) is not valid (expected valid)
file:///data/projects/usr/lib/qml/org/kde/ksysguard/table/TableViewHeader.qml:200: TypeError: Cannot read property 'row' of undefined (exception occurred during delayed function evaluation)
file:///data/projects/usr/share/ksysguard/sensorfaces/org.kde.ksysguard.linechart/contents/ui/LineChart.qml:77:9: Unable to assign [undefined] to bool
file:///data/projects/usr/share/ksysguard/sensorfaces/org.kde.ksysguard.linechart/contents/ui/LineChart.qml:77:9: Unable to assign [undefined] to bool
file:///data/projects/usr/share/ksysguard/sensorfaces/org.kde.ksysguard.linechart/contents/ui/LineChart.qml:77:9: Unable to assign [undefined] to bool
file:///data/projects/usr/lib/qml/org/kde/kirigami.2/ActionToolBar.qml:110:18: QML ToolBarLayout: Binding loop detected for property "actions"
file:///data/projects/usr/lib/qml/org/kde/kirigami.2/ActionToolBar.qml:110:18: QML ToolBarLayout: Binding loop detected for property "actions"
org.kde.ksysguard.plugin.network: Helper process terminated abnormally!
org.kde.ksysguard.plugin.network: "The process doesn't have permission to open the capture source\n"
file:///data/projects/usr/lib/qml/org/kde/kirigami.2/Page.qml:399: TypeError: Cannot read property 'currentIndex' of null
file:///data/projects/usr/lib/qml/org/kde/kirigami.2/private/globaltoolbar/AbstractPageHeader.qml:29: TypeError: Cannot read property 'ScenePosition' of null
file:///data/projects/usr/lib/qml/org/kde/kirigami.2/private/globaltoolbar/AbstractPageHeader.qml:24: TypeError: Cannot read property 'title' of null
file:///data/projects/usr/lib/qml/org/kde/kirigami.2/private/globaltoolbar/ToolBarPageHeader.qml:48:13: Unable to assign [undefined] to double
file:///data/projects/usr/lib/qml/org/kde/kirigami.2/private/globaltoolbar/ToolBarPageHeader.qml:47:13: Unable to assign [undefined] to double
file:///data/projects/usr/lib/qml/org/kde/kirigami.2/private/globaltoolbar/ToolBarPageHeader.qml:46:13: Unable to assign [undefined] to double
file:///data/projects/usr/lib/qml/org/kde/kirigami.2/private/globaltoolbar/ToolBarPageHeader.qml:45:13: Unable to assign [undefined] to bool
```
Comment 1 Marco Martin 2020-11-12 14:28:15 UTC
that qt.core.qabstractitemmodel.checkindex: Index QModelIndex(-1,-1,0x0,QObject(0x0)) is not valid (expected valid) has been fixed

can you try again with master to see if this is still an issue?
Comment 2 Vlad Zahorodnii 2020-11-13 12:26:42 UTC
Nope, I still see lots of warnings about bad indices.
Comment 3 nyanpasu64 2021-05-27 23:48:59 UTC
I'm on System Monitor 5.21.90 on Arch Linux with the [kde-unstable] repo enabled, and still encountering the Processes bug.

If I switch to one page of System Monitor, then switch to another page before the "fade-in" animation finishes playing, the first page never loads, and switching back to it only yields an endless spinner. However, clicking Edit Page in the top-right corner of the window causes the page's contents to reappear as expected.

Additionally, I am *still* getting the `qt.core.qabstractitemmodel.checkindex: Index QModelIndex(-1,-1,0x0,QObject(0x0)) is not valid (expected valid)` issue.

Operating System: Arch Linux
KDE Plasma Version: 5.21.90
KDE Frameworks Version: 5.82.0
Qt Version: 5.15.2
Kernel Version: 5.12.7-arch1-1 (64-bit)
Graphics Platform: X11
Processors: 12 × AMD Ryzen 5 5600X 6-Core Processor
Memory: 15.6 GiB of RAM
Graphics Processor: NVIDIA GeForce GT 730/PCIe/SSE2
Comment 4 Frank Steinmetzger 2021-08-25 10:49:09 UTC
I am also experiencing the “Index QModelIndex(…) is not valid” messages on my PC. Up until recently I got one every half second (the interval for the systemmonitor graphs in my panel). But I held my tongue because I found this bug and Marco said it has been fixed (long ago). But after the recent updated of plasma from 5.22.3 to 5.22.4 and the subsequent reboot I had six messages per second. The setup uses five graphs.

Currently it is back to one line every half-second—don’t know why. Nonetheless, it is a nuisance, not to mention journal spam and an unneccesary write load for the SSD. Interestingly, my laptop, which runs a similar setup of KDE with some line graphs in the panel, does not have this problem.

I am willing to help debug it, if you tell me what to do. Because I don’t really want to delete the sensors and set them up anew (especially without the guarantee that it will solve the issue for me).

Operating System: Arch Linux
KDE Plasma Version: 5.22.4
KDE Frameworks Version: 5.85.0
Qt Version: 5.15.2
Kernel Version: 5.13.12-arch1-1 (64-bit)
Graphics Platform: X11
Processors: 4 × Intel® Core™ i5-4590 CPU @ 3.30GHz
Memory: 31.0 GiB of RAM
Graphics Processor: AMD PITCAIRN
Comment 5 David Edmundson 2021-08-26 08:31:00 UTC
The model index warning is fixed in master, I'll see if we can easily cherry-pick it back.