Summary: | kbuildsycoca: No desktop entries on Kinoite with UTC timezone | ||
---|---|---|---|
Product: | [Frameworks and Libraries] frameworks-kservice | Reporter: | Timothée Ravier <travier> |
Component: | general | Assignee: | Timothée Ravier <travier> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | a.samirh78, kdelibs-bugs, nate, plasma-bugs, rdieter, sph, yosukematsumura |
Priority: | NOR | ||
Version: | 5.94.0 | ||
Target Milestone: | --- | ||
Platform: | Fedora RPMs | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: |
Description
Timothée Ravier
2021-09-04 19:47:33 UTC
The exact reproducer is to install Fedora Kinoite (35) and choose an UTC timezone. Any other timezone will not display this issue. I'll try to reproduce this on a classic KDE system although I'm afraid it's linked to the timestamp issue. From Fedora bug report: https://bugzilla.redhat.com/show_bug.cgi?id=2021087 The mostly likely issue here is that on Kinoite, all files in /usr are timestamp 0 (thus using the UNIX origin timestamp). The fact that it manifest only on the UTC timezone might be because on other TZ, something in KDE will convert the date into a "local zone" timestamp/date which then won't be 0. I think I've found the root cause (https://discussion.fedoraproject.org/t/kinoite-installation-with-utc-timezone-breaks-kde/34293/8?u=guiltydoggy). I think a change to the updateHash (https://github.com/KDE/kservice/blob/master/src/sycoca/kbuildsycoca.cpp#L610) to add 1 so that the hash no longer equals 0 may fix the problem, but I don't know what other impacts it may have: hash += fi.lastModified().toSecsSinceEpoch(); Thanks a lot for the debugging. Will try a patch. Sorry, it seems my analysis was mistaken and this patch does not fix the "findInCache with a lastModified timestamp of 0 is deprecated" message, but does fix usability of Kinoite when set to UTC timezone. I'll make this one about Kinoite with UTC and clone the bug for the other issue. Other issue in https://bugs.kde.org/show_bug.cgi?id=453876 @Yosuke: good investigative work, thanks. Fixed by https://invent.kde.org/frameworks/kservice/-/merge_requests/87 Automation did not properly trigger as there was an email mismatch that I have now fixed. I know this has been closed for a while, but my journal STILL is spammed by "kf.plasma.core: findInCache with a lastModified timestamp of 0 is deprecated" messages. If it's benign, it has no business being logged. But right now it's being written 50+ times per second, judging from journal logs, which is a bug in and of itself, and makes using the journal an unnecessary pain in the butt. ``` ~ % journalctl -b > out.txt ~ % uptime 17:12:54 up 4 days, 1:04, 2 users, load average: 4.16, 4.04, 4.00 ~ % grep 'kf.plasma.core: findInCache with' out.txt | wc -l 553628 ``` Right now it's being written 138,000 times PER DAY on my machine. The affected code now lives in KSvg for Frameworks 6, FWIW. |