Sunday, May 19, 2013

personal experience and opinion - kmail2 still not suitable for on-the-road use :(

I was very sceptic for a long time. Then, I slowly started to trust the kmail2/akonadi combination. I've been using it on my office desktop for a long time, and it works well and is very stable and fast there. (Might be related to the fact that the IMAP server is just across the lawn.) Some time ago, when I deemed things solid enough I even upgraded my laptop again, despite earlier problems. In Gentoo, we've been keeping kdepim-4.4 around all the time, and as you may have read, internal discussions led indeed to the decision to finally drop it some time ago.
What happened in the meantime?
1) One of the more annoying bugs mentioned in my last blog post was fixed with some help from Kevin Kofler. Seems like Debian stumbled into the same issue long ago.
2) I was on vacation. Which was fun, but mostly unrelated to the issue at hand. None of my Gentoo colleagues went ahead with the removal in the meantime. A lot of e-mails accumulated in my account.
3) Coming back, I was on the train with my laptop, sorting the mail. The train was full, the onboard WLAN slightly overstressed, the 4G network just about more reliable. Network comes and goes sometime with a tunnel, no problem. Or so I thought.
4) Half an hour before arriving back home I realized that silently a large part of the e-mails that I had (I though) moved (using kmail2-4.10.3 / akonadi-1.9.2) from one folder to another over ~3 hours had disappeared on one side, and not re-appeared on the other. Restarting kmail2 and akonadi did not help. A quick check of the webmail interface of my provider confirmed that also on the IMAP server the mails were gone in both folders. &%(/&%(&/$/&%$§&/
I wasn't happy. Luckily there were daily server backup snapshots, and after a few days delay I had all the documents back. Nevertheless... Now, I am considering what to do next. (Needless to say, in my opinion we should forget dropping kmail1 in Gentoo for now.) Options...
a) migrate the laptop back to kmail1, which is way more resistant to dropped connections and flaky internet connection - doable but takes a bit of time
b) install OfflineIMAP and Dovecot on the laptop, and let kmail2/akonadi access the localhost Dovecot server - probably the most elegant solution but for the fact that OfflineIMAP seems to have trouble mirroring our Novell Groupwise IMAP server
c) other e-mail client? I've heard good things about trojita...
Summarizing... no idea still how to go ahead, no good solution available. And I actually like the kdepim integration idea, so I'll never be the first one to completely migrate away from it! I am sincerely sorry for the sure fact that this post is disheartening to all the people who put a lot of effort into improving kmail2 and akonadi. It has become a huge lot better. However, I am just getting more and more convinced that the complexity of this combined system is too much to handle and that kmail should never have gone the akonadi way.

29 comments:

  1. A bit weird. Wonder how Akonadi/kmail handles moving. Why didn't it copy first then the delete. If the process fails in between, then we have extra copies.

    There must be some way to have ACID properties in Akonadi

    ReplyDelete
  2. When I was looking into something similar to option b a little while ago I read good things about isync [1], might be worth seeing if it has more luck with your IMAP server than OfflineIMAP

    [1] http://isync.sourceforge.net/

    ReplyDelete
    Replies
    1. Yes, that works better indeed. Happily using the git master version now for mail backup (the releases do not support recursive syncing of IMAP subfolders yet).

      Delete
  3. Welcome to the team. I can only say I feel your pain. I've gone the point-c-way, and currently use Claws-mail

    ReplyDelete
  4. full ACK, its so sad :[
    akonadi has no positive impact for kmail seen from a users perspective, it just adds more pain and grief.
    i went the thunder/sunbird route and have a flawless experience, still its a pity that kmail is unable to handle a offline imap account properly

    ReplyDelete
  5. Yea, for a long time Debian wouldn't upgrade to kmail2 because there were critical bug reports against it due to a potential for loss of data during the upgrade process from KMAIL1. So Debian stuck with KMAIL1 for the longest time. I'm in China and the connection to GMAIL's servers is horrendously poor. It's common for Connection Reset packets to be forged by the top level internet providers here and sent to both my PC and to Google's Servers to discourage the use of Google services. Needless to say, this really borks the connection bad. E-Mails appear and then disappear in IMAP on KMAIL2. On KMAIL1, it keeps looping during the connection phase. Sometimes it just gets stuck there forever and if you quickly close and restart, it causes a segfault.. You have to close and then wait some minutes before starting it again.

    Needless to say, I switched off of KMAIL completely to IceDove/Thunderbird and haven't had any problems since. The forged reset packets don't cause IceDove/Thunderbird any troubles.

    Edit: BTW, blogspot is blocked here in China so I have to use a VPN. :D

    ReplyDelete
    Replies
    1. I filled a bug report against KMAIL1 a while ago for the Segfault but it got closed out because it's no longer supported.. Oh well..

      Delete
    2. Just to clarify.. KMAIL & KMAIL2 worked "OK" with gmail until I moved to China. Now I have to use IceDove/Thunderbird.

      Delete
  6. Nearly I year ago I tried KMail2/Akonadi. It's been a total disaster (https://bugs.kde.org/show_bug.cgi?id=303350).

    Now, I thought of giving it another chance ... (chance #5 I think; stopped counting), since I heard they've done some work on kdepim again.

    I really *loved* KMail1 - but this Akonadi thing simply does not work. It screwed one of the best KDE apps. :(

    Sadly, regarding your experience: KMail2 is yet again ... after YEARS of development ... still not ready. Still not at the point where KMail1 has been. Alas, what a shame! *sigh*

    ReplyDelete
  7. I switched to KMail2 after your previous post about the bitrot in KMail1, but I'm far from satisfied with it. It's sluggish, it hangs and crashes far too often, and there's a lot of duplicate incoming mails.

    I miss the old KMail which was both fast and rock solid. Since I switched to Gentoo and KDE (3.2?) in 2003, KMail has been with me all the time. I still have the original Mail folder in my home directory, which was set up by KMail when I first started it.

    I wish that somebody would fork KMail1 like Clementine was forked from Amarok when the latter went over the top. It's a shame to throw away good code.

    ReplyDelete
    Replies
    1. Yes please, I wish someone would fork Kmail1 and get it to build against Qt5, call it a different name, and I'm sure it would get a life of it's own as I am not aware of one single person using KDE who can rely on the current akonadi based kmail... not a one... as in, NO one I know is using the current Kmail!

      Delete
  8. I really loved KMail1. KMail2 gave me data loss .. twice .. first time I recovered from backups but second time was too much. Reason? F****g mysql database got corrupted. Really.

    ReplyDelete
    Replies
    1. Yeah, and that never happened with KMail1...

      Delete
  9. This might sound a bit arrogant, but how about contributing with bugfixing? Or by funding bugfixing? It is FLOSS after all, so, what are we waiting for? :)

    ReplyDelete
    Replies
    1. First, I already spend more time fixing Linux stuff than I should. Second, I don't really have gained the best impression of the kmail developers vs. distribution packagers relationship over the years. (Even vs. users... this goes so far that KDE forum admins lock "complaint threads".) Third, I'm not really eager to contribute to something I dont believe in, and kmail using akonadi for e-mails is just plain wrong. It may be conceptionally a nice idea, but it will never become stable. I'm not familiar with the code at all, but I may reconsider if someone really starts a fork integrating non-akonadi kmail into recent kdepim.

      Delete
    2. As Andreas said, it's a flawed model so there is no encouragement to contribute aside from the "don't you dare criticize one of our precious pillars of KDE mentality". It's simple; Thunderbird, Claws, Kmail1, even Kmail from KDE3, do and did not have these connectivity and reliability problems... after 4+ years akonadi is simply still not usable. It's the weakest single point stopping KDE from wider adoption. Thank goodness for Thunderbird, a "good enough" mail app that at least works as advertised.

      Delete
    3. Yes, it's FLOSS, but not the only one FLOSS e-mail client. So we could, as well, leave Kmail's endless struggle to someone else, and contribute to some other project that stand a chance.

      E.g. I'd rather help with bugfixing Claws-mail (whose developers actually appreciate bug-reports!), or with funding Trojitá (that do one thing, but do it well).

      And in fact that's exactly what I'm doing. :)

      (BTW, Andreas, I absolutely second _every_ word of your reply.)

      Delete
  10. I use KMail2 with Akonadi. Its far away from being perfect, but its usable for me and my daily work. I use it with 3 imap accounts and about 40k mails in 300 folders.

    KMail1 was good, but also not perfect. The bug when the UI were freezed by synchronizing the folders was making me crazy every day. Now I have other bugs, but at all KMail2 is usable for me.

    ReplyDelete
  11. For every bad experience with KDE PIM 2 and every good one with KDE PIM 1, there's a bad experience with KDE PIM 1 and a good one with KDE PIM 2... http://lists.kde.org/?l=kde-pim&m=136802115711074&w=2

    It ain't black and white. The problem is that for some usecases, KDE PIM 2 is VERY good and stable - especially for use in a corporate environment: http://lists.kde.org/?l=kde-pim&m=136791444006823&w=2

    For other usecases, it just plain sucks. What is needed is that there are developers who care about the usecases where KDE PIM 2 atm sucks at.

    ReplyDelete
    Replies
    1. Well, whatever are the issues, data loss is not one of them - it is a showstopper for this kind of application.

      Delete
    2. Jos, I 100% agree. I can indeed confirm (as also at the top of the post) that in the workplace environment kmail2 works fast and stable, and I've never had any serious issues since I upgraded. That's with a hardwired 100MBps ethernet connection to the campus network and the computing services building maybe 500m away, and these guys take uptime serious. That said, somehow I personally never had really bad experiences with kmail1 either (but I only ever used disconnected imap accounts, and started using it only with late 4.3 - pine/alpine user before).

      Delete
    3. Crap. I tried to use kmail2 in corporate net (exchange, imap, everything serverside) and it failed miserably. It's nice and all, but akonadi imap backend got b0rked so often it was not funny. It's not like old imap kioslave was perfect, but it never lost data. And thats game over for kmail2.

      Delete
    4. a real showstopper is the fact that imap syncing (idle) would silently stop without a notice while on my android phone the mails were still coming in.
      Also it just stops syncing after resuming from standby or hibernation - with out a notice of course.
      From time to time i recompile current git cause i still have the nostalgic hope everything will be good again, but its always a downer ...

      Delete
  12. Does Akonadi really have anything to do with email loss? Akonadi seems to be largely about tags about email.

    If you lost email on an intermittent IMAP session the most likely causes are:

    #1 The IMAP client is buggy.
    #2 Yet another case where KDE applications don't do enough 'fsync'.

    Most likely in your case it is a buggy IMAP client if you were moving messages between two IMAP folders. Because this has to be done carefully by the client code.

    Perhaps Akonadi is used to store the state of the IMAP folders, but I find that hard to believe.

    ReplyDelete
    Replies
    1. Why does it matter which layer is responsible for data loss? For me the mysql part failed and boy I was not happy. I cannot stop using the mysql part of akonadi cause it is a hard dependency.

      Delete
  13. Wholeheartedly agree about the comment on Akonadi not adding anything to users. Since it's introduction, it has given me nothing but headaches. Been using Kmail since 2003 and I suffered through and stuck with it until last month. Finally went with Thunderbird and it is like the pounding in my head juts stopped. Yes, it is a tiny bit less prettier, but reliability more than makes up for it.

    ReplyDelete
  14. Unfortunately offlineimap is unmaintained at the moment. There are patches floating around on the mailing list, but mostly people are reporting things and nobody integrates stuff or puts on 'the hat'.

    ReplyDelete
  15. Akonadi's requirement to stable connection is sole reason i migrated from kmail [to claws-mail] and after some time from KDE.
    I'm living in a under-development country with unstable, encrypted protocols throttled and expensive Internet connection. For some time my SSL connections were limited to about 6KB/s and it was not possible make kamil Online since it was not enough for Akonadi. For me it was bug but since it's not problem for very people it's ignored.
    Also i sent bug reports about losing mails.

    By the way, for me, kmail before Akonadi is most powerful mail client I've worked with it ever and one of most beautiful GUI softwares.

    ReplyDelete
  16. I also tried since 2 days to use Kmail2 instead of thunderbird for my work mail running on Exchange IMAP. It seemed to work well, but then I recognized offline mode does not work and it does not synchronize emails.
    I deleted account & re-created one, this time it worked to sync, but then when it was for example sync'ing Sent Items, and if I move to Inbox in the GUI, it does not anymore update me with the new mail coming in (I can see on my mobile). It gives priority to the syncing of Sent Items.

    Also it managed to lock my account out on NT Domain I don't know why, but it was obvious that quitting Kmail2 does not really quit everything, it seems Akonadi is still running in the background. Definitely I don't want this, when I quit my mail app, it shall quit with all background processes.

    ReplyDelete