[Kde-pim] Re: process akonadi_mixedmaildir_resource crashes

guy-kde guy-kde at maurel.de
Fri Jul 22 17:25:06 BST 2011


 Hello Kevin!

 Fine to get help!

 On Thu, 21 Jul 2011 20:39:17 +0200, Kevin Krammer 
 <kevin.krammer at gmx.at> wrote:
> Hi Guy,
>
> On Thursday, 2011-07-21, Guy Maurel wrote:
>> Hello Kevin!
>>
>> On Wednesday, July 20, 2011 07:14:22 PM Kevin Krammer wrote:
>> > Hi Guy,
>> >
>> > On Wednesday, 2011-07-20, Guy Maurel wrote:
>> > > Hello!
>> > >
>> > > At the end of the kmail-migration, the process
>> > > akonadi_mixedmaildir_resource crashes.
>> > >
>> > > This occurs in the method:
>> > >    SpecialCollectionsRequestJobPrivate::resourceScanResult( KJob 
>> *job )
>> >
>> > Where in the mixed maildir resource is this called?
>> > I can't remember adding that.
>>
>>   if ( qobject_cast<DefaultResourceJob*>( job ) ) {
>>     // This is the default resource.
>>     if ( resourceId != mSpecialCollections->d->defaultResourceId() ) 
>> {
>>       kError(0) << "Resource id's don't match: " << resourceId
>>                 << mSpecialCollections->d->defaultResourceId();
>>       Q_ASSERT( false );
>>     }
>
> Still can't find it anywhere in the resource's code.  Doesn't seem to 
> be in
> any of the base classes either.
 I am using "master" with ID 6b18ec66cb324ee3462a64856852bc98f612be92
 from kdepimlibs.
 The crash occurs at the file
   
 /home/guy-kde/kdesvn/kdepimlibs/akonadi/specialcollectionsrequestjob.cpp
 at the lines 200-204 (I had some kDebug(... lines, so the linenumbers 
 at
 the crash below are light different). These lines were written by 
 Sergio Martins
 commit 6768a9646e81472e4640bec3e7d5cda10699251e

> Can you attach a backtrace of the resource at the time of the crash?
> I am quite curious how the resource could reach that code, it doesn't
> seem to
> be technically possible.
 Yes, the crash it little big...

>> > > The problem is (I think) that the variable:
>> > >   mDefaultResourceId
>> > >
>> > > defined in specialcollections_p.h, has no setter-method.
>> >
>> > Which means it has its default construction value, in the case of 
>> a
>> > QString an empty QString object.
>>
>> Yes. I found no code to change the value.
>
> It is written to in SpecialCollectionsPrivate::defaultResourceId(),
 right, from the file
   /home/guy-kde/kdesvn/kdepimlibs/akonadi/specialcollections.cpp
 which included
   /home/guy-kde/kdesvn/kdepimlibs/akonadi/specialcollections_p.h

> read from
> a config object (in case of mails filled from config file
> specialmailcollectionsrc)
 right, which contains:
   [SpecialCollections]
   DefaultResourceId=akonadi_maildir_resource_0

>> Should not the new value be told from some DBus-message?
>> Coming from the migration? Is such a message sent?/
>
> I doubt it. The last time I worked on this part it was just reading 
> from the
> config file, which the migrator is writing to. Secured by a "D-Bus 
> lock"
> (exclusive registration of a specific D-Bus service name).
>
>> This occurs at the end of the migration, as kmail-migrator is doing 
>> a "take
>> over". Bye
>
> "Take over" means the migrator is setting the mixed maildir 
> resource's id in
> the specialmailcollectionsrc file, replacing the usual maildir 
> resource id
> there.
 NOT at me!
 Is it the bug?
 
> I am still puzzled why and how the resource would query that, as far
> as I know
> only the maildispatcher agent and KMail are doing that.

 Thanks again
-- 
 guy-kde
-------------- next part --------------
Application: Akonadi Agent (akonadi_maildispatcher_agent), signal: Aborted
[KCrash Handler]
#6  0x00007f63b1faf795 in raise () from /lib/libc.so.6
#7  0x00007f63b1fb0c0b in abort () from /lib/libc.so.6
#8  0x00007f63b5c7454f in qt_message_output(QtMsgType, char const*) () from /home/guy-kde/qt4/lib/libQtCore.so.4
#9  0x00007f63b5c746dd in ?? () from /home/guy-kde/qt4/lib/libQtCore.so.4
#10 0x00007f63b5c74875 in qFatal(char const*, ...) () from /home/guy-kde/qt4/lib/libQtCore.so.4
#11 0x00007f63b6446552 in Akonadi::SpecialCollectionsRequestJobPrivate::resourceScanResult (this=0xacbb70, job=<value optimized out>) at /home/guy-kde/kdesvn/kdepimlibs/akonadi/specialcollectionsrequestjob.cpp:207
#12 0x00007f63b6446775 in Akonadi::SpecialCollectionsRequestJob::qt_metacall (this=0xaaa460, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x7fff7f377290) at /home/guy-kde/kdesvn/build/kdepimlibs/akonadi/specialcollectionsrequestjob.moc:80
#13 0x00007f63b5d7bb7f in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /home/guy-kde/qt4/lib/libQtCore.so.4
#14 0x00007f63b535fa93 in KJob::result (this=0xab43b0, _t1=0xab43b0) at /home/guy-kde/kdesvn/build/kdelibs/kdecore/kjob.moc:194
#15 0x00007f63b535ef01 in KJob::emitResult (this=0xab43b0) at /home/guy-kde/kdesvn/kdelibs/kdecore/jobs/kjob.cpp:312
#16 0x00007f63b644153a in Akonadi::ResourceScanJob::Private::fetchResult (this=0xacb780, job=<value optimized out>) at /home/guy-kde/kdesvn/kdepimlibs/akonadi/specialcollectionshelperjobs.cpp:154
#17 0x00007f63b64416e1 in Akonadi::ResourceScanJob::qt_metacall (this=0xab43b0, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x7fff7f3775d0) at /home/guy-kde/kdesvn/build/kdepimlibs/akonadi/specialcollectionshelperjobs_p.moc:72
#18 0x00007f63b64437f0 in Akonadi::DefaultResourceJob::qt_metacall (this=0xab43b0, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x7fff7f3775d0) at /home/guy-kde/kdesvn/build/kdepimlibs/akonadi/specialcollectionshelperjobs_p.moc:133
#19 0x00007f63b5d7bb7f in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /home/guy-kde/qt4/lib/libQtCore.so.4
#20 0x00007f63b535fa93 in KJob::result (this=0xabd270, _t1=0xabd270) at /home/guy-kde/kdesvn/build/kdelibs/kdecore/kjob.moc:194
#21 0x00007f63b535ef01 in KJob::emitResult (this=0xabd270) at /home/guy-kde/kdesvn/kdelibs/kdecore/jobs/kjob.cpp:312
#22 0x00007f63b640ca71 in Akonadi::Job::qt_metacall (this=0xabd270, _c=QMetaObject::InvokeMetaMethod, _id=6, _a=0xac2e90) at /home/guy-kde/kdesvn/build/kdepimlibs/akonadi/job.moc:91
#23 0x00007f63b63a03a5 in Akonadi::CollectionFetchJob::qt_metacall (this=0xabd270, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0xac2e90) at /home/guy-kde/kdesvn/build/kdepimlibs/akonadi/collectionfetchjob.moc:75
#24 0x00007f63b5d7a9da in QObject::event(QEvent*) () from /home/guy-kde/qt4/lib/libQtCore.so.4
#25 0x00007f63b2c84634 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /home/guy-kde/qt4/lib/libQtGui.so.4
#26 0x00007f63b2c8920a in QApplication::notify(QObject*, QEvent*) () from /home/guy-kde/qt4/lib/libQtGui.so.4
#27 0x00007f63b4185fb6 in KApplication::notify (this=0x7fff7f3780c0, receiver=0xabd270, event=0xae8480) at /home/guy-kde/kdesvn/kdelibs/kdeui/kernel/kapplication.cpp:311
#28 0x00007f63b5d6667c in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /home/guy-kde/qt4/lib/libQtCore.so.4
#29 0x00007f63b5d69ea5 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /home/guy-kde/qt4/lib/libQtCore.so.4
#30 0x00007f63b5d915e3 in ?? () from /home/guy-kde/qt4/lib/libQtCore.so.4
#31 0x00007f63b0d4fbf3 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#32 0x00007f63b0d503d0 in ?? () from /usr/lib/libglib-2.0.so.0
#33 0x00007f63b0d5066d in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#34 0x00007f63b5d9177f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /home/guy-kde/qt4/lib/libQtCore.so.4
#35 0x00007f63b2d29f1e in ?? () from /home/guy-kde/qt4/lib/libQtGui.so.4
#36 0x00007f63b5d65a32 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /home/guy-kde/qt4/lib/libQtCore.so.4
#37 0x00007f63b5d65c7c in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /home/guy-kde/qt4/lib/libQtCore.so.4
#38 0x00007f63b5d6a15b in QCoreApplication::exec() () from /home/guy-kde/qt4/lib/libQtCore.so.4
#39 0x00007f63b637c7d2 in Akonadi::AgentBase::init (r=0xa96a20) at /home/guy-kde/kdesvn/kdepimlibs/akonadi/agentbase.cpp:538
#40 0x000000000040cee5 in Akonadi::AgentBase::init<MailDispatcherAgent> (argc=<value optimized out>, argv=<value optimized out>) at /usr/local/include/KDE/Akonadi/../../akonadi/agentbase.h:342
#41 0x00007f63b1f9c17d in __libc_start_main () from /lib/libc.so.6
#42 0x000000000040a1a9 in _start ()
-------------- next part --------------
_______________________________________________
KDE PIM mailing list kde-pim at kde.org
https://mail.kde.org/mailman/listinfo/kde-pim
KDE PIM home page at http://pim.kde.org/


More information about the kde-pim mailing list