Bug 249757 - Crash when trying to delete default account ("Local Folders")
Summary: Crash when trying to delete default account ("Local Folders")
Status: CLOSED FIXED
Alias: None
Product: KMail Mobile
Classification: Applications
Component: general (show other bugs)
Version: unspecified
Platform: Maemo 5 Linux
: NOR major
Target Milestone: ---
Assignee: Felix Wolfsteller
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-09-01 15:34 UTC by Felix Wolfsteller
Modified: 2010-12-02 12:26 UTC (History)
4 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Felix Wolfsteller 2010-09-01 15:34:54 UTC
When trying to delete the default account ("Local Folders"), kmail-mobile crashes after a couple of error messages (~could not read collection).

It will recover with the next start however (with local folders still accessible).

Observed in version  4:4.5~20100827.1168757-1maemo1.1169941 .

stdout/err shown follows.
"
Triggered was: accounts_list



kmail-mobile(3558)/libakonadi Akonadi::EntityTreeModelPrivate::fetchJobDone: Job error:  "Unknown error. (Cannot select this collection)" 

kmail-mobile(3558)/libakonadi Akonadi::GetLockJob::Private::timeout: Timeout trying to get lock. 
kmail-mobile(3558)/libakonadi Akonadi::SpecialCollectionsRequestJobPrivate::lockResult: Failed to get lock: "Timeout trying to get lock." 
kmail-mobile(3558)/libakonadi Akonadi::GetLockJob::Private::timeout: Timeout trying to get lock. 
kmail-mobile(3558)/libakonadi Akonadi::SpecialCollectionsRequestJobPrivate::lockResult: Failed to get lock: "Timeout trying to get lock." 
kmail-mobile(3558)/libakonadi Akonadi::GetLockJob::Private::timeout: Timeout trying to get lock. 
kmail-mobile(3558)/libakonadi Akonadi::SpecialCollectionsRequestJobPrivate::lockResult: Failed to get lock: "Timeout trying to get lock." 
kmail-mobile(3558)/libakonadi Akonadi::GetLockJob::Private::timeout: Timeout trying to get lock. 
kmail-mobile(3558)/libakonadi Akonadi::SpecialCollectionsRequestJobPrivate::lockResult: Failed to get lock: "Timeout trying to get lock." 
kmail-mobile(3558)/libakonadi Akonadi::SpecialCollectionsRequestJobPrivate::lockResult: Failed to get lock: "Timeout trying to get lock." 
kmail-mobile(3558)/libakonadi Akonadi::SpecialCollectionsRequestJobPrivate::lockResult: Failed to get lock: "Timeout trying to get lock." 
kmail-mobile(3558)/libakonadi Akonadi::SpecialCollectionsRequestJobPrivate::lockResult: Failed to get lock: "Timeout trying to get lock." 
kmail-mobile(3558)/libakonadi Akonadi::SpecialCollectionsRequestJobPrivate::lockResult: Failed to get lock: "Timeout trying to get lock." 
KCrash: crashing... crashRecursionCounter = 2
KCrash: Application Name = kmail-mobile path = /opt/maemo/usr/bin pid = 3558
KCrash: Attempting to start  from kdeinit
sock_file=/home/user/.kde/socket-Nokia-N900/kdeinit4__0
Warning: connect() failed: : No such file or directory
KCrash: Attempting to start  directly
KCrash failed to exec(), errno = 2
"
Comment 1 Till Adam 2010-09-18 15:25:44 UTC
Doesn't crash for me. Still reproducible?
Comment 2 Felix Wolfsteller 2010-09-20 10:12:34 UTC
Still reproducible.

I have another account. When I delete "Local Folders", it disappears from the flap section, but not from the tree view (separate bug, i guess).

If I refresh the tree-view afterwards (i.e. touch "home"), my other account is "lost", instead its Inbox is displayed as top-level folder directly.

If I then reopen the flap, "Local Folders" will be back in the Accounts section.

If i then close the flap and select the Inbox in the treeview, kmail-mobile crashes.
Comment 3 Felix Wolfsteller 2010-09-20 10:13:52 UTC
In version 4:4.5~20100920.1177273-1maemo1.1174921 .

(In reply to comment #2)
> Still reproducible.
> 
...
> If i then close the flap and select the Inbox in the treeview, kmail-mobile
> crashes.
Comment 4 Volker Krause 2010-09-28 19:11:32 UTC
I am unable to reproduce this here, could you please provide a backtrace?
Comment 5 Felix Wolfsteller 2010-09-29 09:45:35 UTC
Works much better in version 4:4.5~20100928.1180427-1maemo1.1180334 . However, it is still possible to create "weird" behavior. After deletion, a "Local Folders" account will be (re?)created. If the flap is closed fast enough and the "old" Local Folders is selected, it did result in two "Local Folder" accounts for me.

Will try harder to create crash and provide backtrace, if I succeed.
Comment 6 Felix Wolfsteller 2010-09-29 10:07:07 UTC
Can still lead to crash.

Sitauation: Local Folders + Kolab Folder. Delete Local Folder, quickly select Local Folder. Leads to two Local Folders in flap. Delete first one, back to collapsed tree view, which is now messed up (wrong top level). Browsing tree view leads to crash. No backtrace yet. Not easily reproducible.
Comment 7 Sergio Martins 2010-10-22 00:14:35 UTC
I played with it a bit, here's the BT:


#0  0x00007f2b3ecda595 in raise () from /lib/libc.so.6
#1  0x00007f2b3ecdba16 in abort () from /lib/libc.so.6
#2  0x00007f2b3fa551d4 in qt_message_output (msgType=QtFatalMsg, buf=0x6caff08 "ASSERT: \"result != end\" in file /data/sources/kde/trunk/kdepim/libkdepim/kdescendantsproxymodel.cpp, line 460")
    at global/qglobal.cpp:2259
#3  0x00007f2b3fa55350 in qt_message(QtMsgType, const char *, typedef __va_list_tag __va_list_tag *) (msgType=QtFatalMsg, msg=0x7f2b3fbfd2f8 "ASSERT: \"%s\" in file %s, line %d", ap=0x7fff6cc32410)
    at global/qglobal.cpp:2305
#4  0x00007f2b3fa55bbe in qFatal (msg=0x7f2b3fbfd2f8 "ASSERT: \"%s\" in file %s, line %d") at global/qglobal.cpp:2488
#5  0x00007f2b3fa54d87 in qt_assert (assertion=0x7f2b453d81c4 "result != end", file=0x7f2b453d7e88 "/data/sources/kde/trunk/kdepim/libkdepim/kdescendantsproxymodel.cpp", line=460) at global/qglobal.cpp:2004
#6  0x00007f2b453acf93 in KDescendantsProxyModel::mapFromSource (this=0x2362ab0, sourceIndex=...) at /data/sources/kde/trunk/kdepim/libkdepim/kdescendantsproxymodel.cpp:460
#7  0x00007f2b453ac61a in KDescendantsProxyModelPrivate::sourceRowsAboutToBeRemoved (this=0x2362370, parent=<value optimized out>, start=<value optimized out>, end=<value optimized out>)
    at /data/sources/kde/trunk/kdepim/libkdepim/kdescendantsproxymodel.cpp:705
#8  0x00007f2b453aece1 in KDescendantsProxyModel::qt_metacall (this=0x2362ab0, _c=QMetaObject::InvokeMetaMethod, _id=2, _a=0x7fff6cc32920)
    at /data/sources/kde/trunk/kdepim/libkdepim/moc_kdescendantsproxymodel_p.cpp:97
#9  0x00007f2b3fb84fd7 in QMetaObject::metacall (object=0x2362ab0, cl=QMetaObject::InvokeMetaMethod, idx=27, argv=0x7fff6cc32920) at kernel/qmetaobject.cpp:237
#10 0x00007f2b3fb99e09 in QMetaObject::activate (sender=0x2363b50, m=0x7f2b3ff058e0, local_signal_index=6, argv=0x7fff6cc32920) at kernel/qobject.cpp:3280
#11 0x00007f2b3fbf8815 in QAbstractItemModel::rowsAboutToBeRemoved (this=0x2363b50, _t1=..., _t2=0, _t3=0) at .moc/debug-shared/moc_qabstractitemmodel.cpp:188
#12 0x00007f2b3fb71f25 in QAbstractItemModel::beginRemoveRows (this=0x2363b50, parent=..., first=0, last=0) at kernel/qabstractitemmodel.cpp:2450
#13 0x00007f2b45626da6 in Future::KIdentityProxyModelPrivate::_k_sourceRowsAboutToBeRemoved (this=<value optimized out>, parent=..., start=0, end=0)
    at /data/sources/kde/trunk/kdepim/akonadi_next/kidentityproxymodel.cpp:702
#14 0x00007f2b456286f4 in Future::KIdentityProxyModel::qt_metacall (this=0x2363b50, _c=QMetaObject::InvokeMetaMethod, _id=3, _a=0x7fff6cc32bb0)
    at /data/sources/kde/trunk/kdepim/akonadi_next/kidentityproxymodel.moc:119
#15 0x00007f2b456233f5 in Future::KCheckableProxyModel::qt_metacall (this=0x2363b50, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x7fff6cc32bb0)
    at /data/sources/kde/trunk/kdepim/akonadi_next/kcheckableproxymodel.moc:70
#16 0x00007f2b3fb84fd7 in QMetaObject::metacall (object=0x2363b50, cl=QMetaObject::InvokeMetaMethod, idx=28, argv=0x7fff6cc32bb0) at kernel/qmetaobject.cpp:237
#17 0x00007f2b3fb99e09 in QMetaObject::activate (sender=0x2356e80, m=0x7f2b3ff058e0, local_signal_index=6, argv=0x7fff6cc32bb0) at kernel/qobject.cpp:3280
#18 0x00007f2b3fbf8815 in QAbstractItemModel::rowsAboutToBeRemoved (this=0x2356e80, _t1=..., _t2=0, _t3=0) at .moc/debug-shared/moc_qabstractitemmodel.cpp:188
#19 0x00007f2b3fb71f25 in QAbstractItemModel::beginRemoveRows (this=0x2356e80, parent=..., first=0, last=0) at kernel/qabstractitemmodel.cpp:2450
#20 0x00007f2b45b95c39 in Akonadi::EntityTreeModelPrivate::monitoredCollectionRemoved (this=0x2356660, collection=...) at /data/sources/kde/trunk/kdepimlibs/akonadi/entitytreemodel_p.cpp:668
#21 0x00007f2b45b88355 in Akonadi::EntityTreeModel::qt_metacall (this=0x2356e80, _c=QMetaObject::InvokeMetaMethod, _id=16, _a=0x7fff6cc32e50)
    at /data/home/kde-devel/kde/build/kdepimlibs/akonadi/entitytreemodel.moc:145
#22 0x00007f2b3fb84fd7 in QMetaObject::metacall (object=0x2356e80, cl=QMetaObject::InvokeMetaMethod, idx=40, argv=0x7fff6cc32e50) at kernel/qmetaobject.cpp:237
#23 0x00007f2b3fb99e09 in QMetaObject::activate (sender=0x2348cb0, m=0x7f2b45ee8160, local_signal_index=10, argv=0x7fff6cc32e50) at kernel/qobject.cpp:3280
#24 0x00007f2b45bcec55 in Akonadi::Monitor::collectionRemoved (this=<value optimized out>, _t1=<value optimized out>) at /data/home/kde-devel/kde/build/kdepimlibs/akonadi/monitor.moc:239
#25 0x00007f2b45bd1d6c in Akonadi::MonitorPrivate::emitCollectionNotification (this=0x232bde0, msg=..., col=<value optimized out>, par=<value optimized out>, dest=<value optimized out>)
    at /data/sources/kde/trunk/kdepimlibs/akonadi/monitor_p.cpp:496
Comment 8 Sergio Martins 2010-10-22 00:19:31 UTC
The crash was with todays trunk.

Just keep on deleting the local folder until it crashes.
Comment 9 Felix Wolfsteller 2010-10-22 11:21:26 UTC
(In reply to comment #7)
> I played with it a bit, here's the BT:

thanks, Sergio.
Comment 10 Sergio Martins 2010-11-10 16:24:53 UTC
There were some fixes in kdescendentsproxymodel so i retested and can't reproduce now.
Comment 11 Ludwig Reiter 2010-12-02 12:26:07 UTC
version: 20101202-1202744-1maemo1

Deleted the Local Folders account three times without a crash.Ok.