Summary: | [Maildir] lots of stats calls to /etc/localtime on synchronizing folders | ||
---|---|---|---|
Product: | [Frameworks and Libraries] Akonadi | Reporter: | Martin Steigerwald <Martin> |
Component: | Maildir Resource | Assignee: | kdepim bugs <kdepim-bugs> |
Status: | REOPENED --- | ||
Severity: | normal | ||
Priority: | NOR | ||
Version: | 5.2.3 | ||
Target Milestone: | --- | ||
Platform: | Debian unstable | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: |
Description
Martin Steigerwald
2014-03-27 13:37:55 UTC
akonadi maildir resource is CPU bound on one core (100%) for minutes during that case. KMail is blocked. I don´t know where that went to but Dan asked me whether setting TZ to something will get rid of the stat()´s on /etc/localtime. Yes it does. Still folder synchronisation is slow: Bug 334218 - synchronizations of large folders with filesystem contents hogs a Sandybridge core for minutes stat()ing every file in it This bug has only been reported for versions older than KDEPIM 4.14 (at most akonadi-1.3). Can anyone tell if this bug still present? If noone confirms this bug for a recent version of akonadi (part of KDE Applications 15.08 or later), it gets closed in about three months. Just as announced in my last comment, I close this bug. If you encounter it again in a recent version (at least 5.0 aka 15.08), please open a new one unless it already exists. Thank you for all your input. This still is happening with KMail 5.2.3 (Debian unstable has no newer package unfortunately and currently I don´t self-compile KDEPIM). How to reproduce? 1. Start KMail with TZ variable unset. 2. Trace it like this: strace -f -o strace-kmail-stat-localtime.txt -p 16925 3. Click between some (larger) folders. # Actual Results ~> strace -f -o strace-kmail-stat-localtime.txt -p 16925 strace: Process 16925 attached with 22 threads ~> grep -c "stat(\"/etc/localtime" strace-kmail-stat-localtime.txt 5496 in just a few seconds of KMail runtime. # Expected results Cache what KMail needs from /etc/localtime at least for a while to reduce the number of calls to that syscall. |