[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-pim
Subject:    Re: [Kde-pim] Review Request 117975: Change libmaildir listNew and listCurrent functions to explicet
From:       "Andras Mantia" <amantia () kde ! org>
Date:       2014-05-05 9:51:34
Message-ID: 20140505095134.19540.1508 () probe ! kde ! org
[Download RAW message or body]


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/117975/#review57297
-----------------------------------------------------------

Ship it!


Looks safe for me, I don't think the order there matters at all. Commit to master and for sure \
I will test. :)

- Andras Mantia


On May 4, 2014, 8:58 a.m., Martin Steigerwald wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://git.reviewboard.kde.org/r/117975/
> -----------------------------------------------------------
> 
> (Updated May 4, 2014, 8:58 a.m.)
> 
> 
> Review request for KDEPIM, KDEPIM-Libraries, Andras Mantia, David Faure, and Sergio Luis \
> Martins. 
> 
> Bugs: 334218
> http://bugs.kde.org/show_bug.cgi?id=334218
> 
> 
> Repository: kdepim-runtime
> 
> 
> Description
> -------
> 
> On trying to find the cause for Akonadi maildir resource hogging up a Sandybridge core for \
> minutes without any notable MySQL or disk activity, Sergio recommended doing a callgrind run. \
> This revealed a bottleneck with QDir.entryList and there specifically in \
> QAlgorihmsPrivate::qSortHelper[1]. 
> Calling setSorting(QDir::NoSort) on the QDir object gets rid of the sorting. This I did twice \
> in maildir.ccp and twice in keycache.cpp for listCurrent and listNew functions there. 
> It is not yet clear whether this change is safe, but on my tests it appears to do. Moving and \
> filtering mails still work okay. I will CC Andras on this as Sergio tried to ping him about \
> this change. 
> I think it is fair to say that this change has a *huge* impact on Akonadi maildir performance \
> with large maildir and I recommend to backport this for stable branch as well once changing \
> to no sorting is considered to be safe. 
> Thanks to Sergio and David for pointing out the sorting issue, telling how to change to no \
> sorting and general help. 
> See also:
> 
> Bug 334218 - synchronizations of large folders with filesystem contents hogs a Sandybridge \
> core for minutes https://bugs.kde.org/334218
> 
> [1] https://bugs.kde.org/show_bug.cgi?id=334218#c4
> 
> [2] Bug 334206 - While maildir resources synchronizes a folder KMail blocks on switching to a \
> different folder: https://bugs.kde.org/334206
> 
> 
> Diffs
> -----
> 
> resources/maildir/libmaildir/keycache.cpp f0af9c47cef63dac45ae68dd94fa17a040dc1593 
> resources/maildir/libmaildir/maildir.cpp 9bd380201a1a250ecfe354dd99946e8dae0ab668 
> 
> Diff: https://git.reviewboard.kde.org/r/117975/diff/
> 
> 
> Testing
> -------
> 
> In my tests with KMail SC 4.12.4 Debian unstable packages and Akonadi and kdepimlibs from Git \
> it works well. Well basically Akonadi maildir resource changed from being a CPU hog for \
> minutes to hardly every appearing in a 10 second measurement average snapshot of atop \
> anymore. KMail hardly blocks on folder changes anymore, which I still believe to be a \
> different issue tough[2]. 
> Mail filtering and moving mails to a different folder still works ago. And KMail is \
> subjectively much faster. It completely changes my KMail experience from being unbearable at \
> times to quite pleasant. 
> 
> Thanks,
> 
> Martin Steigerwald
> 
> 

_______________________________________________
KDE PIM mailing list kde-pim@kde.org
https://mail.kde.org/mailman/listinfo/kde-pim
KDE PIM home page at http://pim.kde.org/


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic