Bug 185679

Summary: aborting POP3-download prior to closing UIDL-error req crashes kmail (error #2 described below)
Product: [Unmaintained] kmail Reporter: reisenweber
Component: generalAssignee: kdepim bugs <kdepim-bugs>
Status: RESOLVED NOT A BUG    
Severity: crash CC: dominik.tritscher, uzi18
Priority: NOR    
Version: 1.9.10   
Target Milestone: ---   
Platform: unspecified   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:
Attachments: traceback of crash on error#2 described above

Description reisenweber 2009-02-27 09:00:57 UTC
Created attachment 31666 [details]
traceback of crash on error#2 described above

+++ This bug was initially created as a clone of Bug #185677 +++

Created an attachment (id=31665)
screenshot showing UIDL-requester

+++ This bug was initially created as a clone of Bug #157946 +++

Version:           1.9.10 (openSUSE 11.1)
Prerequisites/Preset:
POP3 account, msgs stay on server, (about 2500 msgs/25Meg on server).
Lots of mails in kmail (search msgtext takes some 10 min)

Reproduce (occurred >1 times. Though it's a timing issue, hard to reproduce - maybe with SIGSTOP KMail, or Netfilters):
During searching of local mails (50% CPU usage on a 2GHz dualcore system) POP3 UIDL obviously times out, opening requester stating the server allegedly "doesn't support UIDL"
o- Error requester "server does not support UIDL (see attachment)
This is bug #1: UIDL timeout mustn't be handled identically to error-response from server

o- i click "abort message download" at bottom right some times (because i know what will follow), then i click "ok" on error-requester **)
o- KONTACT coredumps (see attachment)
This is bug #2: kmail must NOT coredump

o- kmail deletes local list of mails already downloaded:
~/.kde/share/kmail/<user>@<serverdomain>:@pop.<serverdomain>:995 is void. 
seenUidList=<nullstring>
size before: ~121k, size after error: ~70byte
This is bug #3: list of downloaded mails MUST NOT be deleted on failure of UIDL.
This bug also appeared when kmail didn't segfault on error#2, it's directly related to UIDL-failure and 100% reproduceable (given you manage to get the UIDL not supported warning)


resulting problems: _all_msgs_ are downloaded a second time, to restore seenUidList. 


seen identically in SuSE10.1 version of Kontact

workaround: 
o- avoid lowmem/high-cpu-load when polling POP3.
o- when error happens: CANCEL DOWNLOAD IMMEDIATELY! Create filter to download all msgs older 1day to a temporary mail dir. Poll. (Disable filter. I keep it for catching errors during unattended polls)
o- *OR* CANCEL DOWNLOAD IMMEDIATELY! restore ~/.kde/share/kmail/<user>@<serverdomain>* from yesterday's backup.
o- then use <CTRL>+* to delete doublettes


jOERG
Comment 1 Christophe Marin 2009-05-30 20:06:39 UTC
Unfortunately, the backtrace is not useful and this KMail version is not maintained anymore.

Please reopen this bug if you encounter this crash with a recent KMail version (>4.2.3) and have a complete backtrace.

You will find more informations on this page: http://techbase.kde.org/Development/Tutorials/Debugging/How_to_create_useful_crash_reports
Comment 2 Christophe Marin 2009-10-23 10:25:07 UTC
Closing the old crash reports which don't have a useful backtrace. Thanks.