stale lock files freeze apps
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Canonical System Image |
Confirmed
|
High
|
Zoltan Balogh | ||
qtbase-opensource-src (Ubuntu) |
Confirmed
|
Undecided
|
Michael Zanetti | ||
qtbase-opensource-src (Ubuntu RTM) |
Confirmed
|
High
|
Timo Jyrinki |
Bug Description
Debugging why the Notes app would freeze for some people, I found there were some stale .lock files around. Those .lock files are autocreated by QSettings (with QLockFile) when this file is edited. Problem is, that it sometimes seems to happen that the app is suspended by our lifecycle and then killed (either by closing from spread or OOM killed) and those .lock files stick around. I have implemented a workaround in the notes app[1] to clear up those stale locks when the app starts app, however, today I ran twice in a row into the issue that the very same happened to music app. It would just freeze on startup and never come back. Digging around a bit I found such a stale lock file on its config file which is created with the QML Settings element. This implies that every app using QSettings or QML Settings {} are potentially affected. I suspect many more app freezes can be traced down to this.
Now, there is some code in Qt to detect stale lock files [2], however, not sure why it doesn't detect those lock files as stale ones and decides to wait on them forever though. Probably a bug in the code or some of the wrong #ifdefs are triggered for our package builds.
[1] https:/
[2] http://
affects: | canonical-devices-system-image → qtbase-opensource-src (Ubuntu) |
description: | updated |
Changed in canonical-devices-system-image: | |
assignee: | nobody → Zoltan Balogh (bzoltan) |
importance: | Undecided → Critical |
milestone: | none → 11 |
status: | New → Confirmed |
Changed in canonical-devices-system-image: | |
milestone: | 11 → 12 |
Changed in qtbase-opensource-src (Ubuntu RTM): | |
assignee: | nobody → Timo Jyrinki (timo-jyrinki) |
importance: | Undecided → High |
status: | New → Confirmed |
Changed in canonical-devices-system-image: | |
importance: | Critical → High |
milestone: | 12 → 13 |
Changed in canonical-devices-system-image: | |
milestone: | x1 → 14 |
Changed in canonical-devices-system-image: | |
milestone: | 14 → x1 |
Status changed to 'Confirmed' because the bug affects multiple users.