Bug 313194

Summary: akonadi_feeder_nepomuk crashes on first run
Product: [Frameworks and Libraries] Akonadi Reporter: Alex Merry <alex.merry>
Component: Nepomuk Feeder AgentsAssignee: kdepim bugs <kdepim-bugs>
Status: RESOLVED FIXED    
Severity: crash CC: simonandric5, vkrause, winter
Priority: NOR    
Version: 4.9   
Target Milestone: ---   
Platform: Compiled Sources   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:
Attachments: New crash information added by DrKonqi

Description Alex Merry 2013-01-13 16:58:32 UTC
Application: akonadi_nepomuk_feeder (4.9)
KDE Platform Version: 4.9.97 (Compiled from sources)
Qt Version: 4.8.4
Operating System: Linux 3.5.6-1-ARCH x86_64
Distribution (Platform): Archlinux Packages

-- Information about the crash:
- What I was doing when the application crashed:

I cleared out all the Akonadi configuration (~/.local/share/akonadi and ~/.config/akonadi) and started Akonadi (akonadictl start or the configuration module).  Then the nepomuk feeder crashed.

It crashes several times, until akonadi decides it has crashed too much and refuses to start it again.

I'm using the default settings (MySQL backend, internal).

This also happens with a fresh test user, but only if I manually restart akonadi after logging in (the crash doesn't happen when I log in).

Snippet of log:
akonadi_nepomuk_feeder(6626) FeederPluginloader::feederPluginsForMimeType: created new plugin
akonadi_nepomuk_feeder(6626) FeederPluginloader::feederPluginsForMimeType: No feeder for type  "inode/directory"  found 
akonadi_nepomuk_feeder(6626) FindUnindexedItemsJob::itemsRetrieved: Akonadi Query took(ms):  216
akonadi_nepomuk_feeder(6626) FindUnindexedItemsJob::itemsRetrieved: copy took(ms):  0
akonadi_nepomuk_feeder(6626) FindUnindexedItemsJob::retrieveIndexedNepomukResources:
AkonadiAgentServer(6639)/libakonadi Akonadi::CollectionSync::Private::execute: void Akonadi::CollectionSync::Private::execute() localListDone:  false
  deliveryDone:  true
AkonadiAgentServer(6639)/libakonadi Akonadi::CollectionSync::Private::execute: void Akonadi::CollectionSync::Private::execute() localListDone:  true 
 deliveryDone:  true
AkonadiAgentServer(6639)/libakonadi Akonadi::CollectionSync::Private::checkDone: void Akonadi::CollectionSync::Private::checkDone() q->commit()
Known subscriber "akonadi_archivemail_agent" subscribes again 
Known subscriber "akonadi_mailfilter_agent" subscribes again 
akonadi_mailfilter_agent(6629)/libakonadi Akonadi::SessionPrivate::init: "MailFilter Kernel ETM"
akonadi_archivemail_agent(6627)/libakonadi Akonadi::SessionPrivate::reconnect: connectToServer "/home/alex/.local/share/akonadi/socket-typo/akonadise
rver.socket"Known subscriber "akonadi_mailfilter_agent" subscribes again 
Known subscriber "akonadi_mailfilter_agent" subscribes again 
akonadi_mailfilter_agent(6629)/libakonadi Akonadi::EntityTreeModelPrivate::startFirstListJob: GEN true false false
akonadi_mailfilter_agent(6629)/libakonadi Akonadi::SessionPrivate::dataReceived: Server protocol version is: 29
akonadi_mailfilter_agent(6629)/libakonadi Akonadi::SessionPrivate::dataReceived: Server protocol version is: 29
Database "akonadi" opened using driver "QMYSQL" 
Database "akonadi" opened using driver "QMYSQL" 
Known subscriber "akonadi_mailfilter_agent" subscribes again 
Known subscriber "akonadi_archivemail_agent" subscribes again 
Known subscriber "akonadi_archivemail_agent" subscribes again 
akonadi_archivemail_agent(6627)/libakonadi Akonadi::EntityTreeModelPrivate::startFirstListJob: GEN true false false
akonadi_archivemail_agent(6627)/libakonadi Akonadi::SessionPrivate::dataReceived: Server protocol version is: 29
akonadi_archivemail_agent(6627)/libakonadi Akonadi::SessionPrivate::dataReceived: Server protocol version is: 29
Database "akonadi" opened using driver "QMYSQL" 
Database "akonadi" opened using driver "QMYSQL" 
[/home/kde-devel/kde/bin/nepomukservicestub] Soprano::ODBC::Connection::Connection() Soprano::Server::ServerConnection(0x13c4790)
akonadi_nepomuk_feeder(6626) FindUnindexedItemsJob::retrieveIndexedNepomukResources: Nepomuk Query took(ms):  2548
akonadi_nepomuk_feeder(6626) FindUnindexedItemsJob::retrieveIndexedNepomukResources: Found  0  unindexed items.
ASSERT: "!cols.isEmpty()" in file /home/kde-devel/src/kde/kdepimlibs/akonadi/collectionfetchjob.cpp, line 119

The crash can be reproduced every time.

-- Backtrace:
Application: Akonadi Nepomuk Feeder (akonadi_nepomuk_feeder), signal: Aborted
Using host libthread_db library "/usr/lib/libthread_db.so.1".
[KCrash Handler]
#6  0x00007f8fc6d012c5 in raise () from /usr/lib/libc.so.6
#7  0x00007f8fc6d02748 in abort () from /usr/lib/libc.so.6
#8  0x00007f8fc976a414 in qt_message_output(QtMsgType, char const*) () from /usr/lib/libQtCore.so.4
#9  0x00007f8fc976a5c8 in ?? () from /usr/lib/libQtCore.so.4
#10 0x00007f8fc976a754 in qFatal(char const*, ...) () from /usr/lib/libQtCore.so.4
#11 0x00007f8fc9ca0b40 in Akonadi::CollectionFetchJob::CollectionFetchJob (this=0x11c9490, cols=..., parent=0x10f3830) at /home/kde-devel/src/kde/kdepimlibs/akonadi/collectionfetchjob.cpp:119
#12 0x00000000004101c7 in Akonadi::NepomukFeederAgent::foundUnindexedItems (this=0x10f3830, job=0x11b5de0) at /home/kde-devel/src/kde/kdepim-runtime/agents/nepomukfeeder/nepomukfeederagent.cpp:487
#13 0x0000000000410f78 in Akonadi::NepomukFeederAgent::qt_static_metacall (_o=0x10f3830, _c=QMetaObject::InvokeMetaMethod, _id=13, _a=0x7fffb59f1a40) at /home/kde-devel/build/kde/kdepim-runtime/agents/nepomukfeeder/nepomukfeederagent.moc:89
#14 0x00007f8fc9886b8f in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/libQtCore.so.4
#15 0x00007f8fca1f888f in KJob::result (this=0x11b5de0, _t1=0x11b5de0) at /home/kde-devel/build/kde/kdelibs/kdecore/kjob.moc:208
#16 0x00007f8fca1f7d53 in KJob::emitResult (this=0x11b5de0) at /home/kde-devel/src/kde/kdelibs/kdecore/jobs/kjob.cpp:318
#17 0x000000000042757d in FindUnindexedItemsJob::retrieveIndexedNepomukResources (this=0x11b5de0) at /home/kde-devel/src/kde/kdepim-runtime/agents/nepomukfeeder/findunindexeditemsjob.cpp:91
#18 0x0000000000427834 in FindUnindexedItemsJob::qt_static_metacall (_o=0x11b5de0, _c=QMetaObject::InvokeMetaMethod, _id=1, _a=0x11abc10) at /home/kde-devel/build/kde/kdepim-runtime/agents/nepomukfeeder/findunindexeditemsjob.moc:52
#19 0x00007f8fc988606e in QObject::event(QEvent*) () from /usr/lib/libQtCore.so.4
#20 0x00007f8fc7caf18c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQtGui.so.4
#21 0x00007f8fc7cb360a in QApplication::notify(QObject*, QEvent*) () from /usr/lib/libQtGui.so.4
#22 0x00007f8fca8768ce in KApplication::notify (this=0x7fffb59f2620, receiver=0x11b5de0, event=0x110d5e0) at /home/kde-devel/src/kde/kdelibs/kdeui/kernel/kapplication.cpp:311
#23 0x00007f8fc98716ae in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/libQtCore.so.4
#24 0x00007f8fc9875011 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /usr/lib/libQtCore.so.4
#25 0x00007f8fc989f9d3 in ?? () from /usr/lib/libQtCore.so.4
#26 0x00007f8fc278c845 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#27 0x00007f8fc278cb78 in ?? () from /usr/lib/libglib-2.0.so.0
#28 0x00007f8fc278cc34 in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#29 0x00007f8fc989fb66 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#30 0x00007f8fc7d4f69e in ?? () from /usr/lib/libQtGui.so.4
#31 0x00007f8fc98703ff in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#32 0x00007f8fc9870688 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#33 0x00007f8fc9875328 in QCoreApplication::exec() () from /usr/lib/libQtCore.so.4
#34 0x00007f8fc9c6f2c3 in Akonadi::AgentBase::init (r=0x10f3830) at /home/kde-devel/src/kde/kdepimlibs/akonadi/agentbase.cpp:576
#35 0x0000000000413a5e in Akonadi::AgentBase::init<Akonadi::NepomukFeederAgent> (argc=3, argv=0x7fffb59f2778) at /home/kde-devel/kde/include/akonadi/agentbase.h:343
#36 0x0000000000410da4 in main (argc=3, argv=0x7fffb59f2778) at /home/kde-devel/src/kde/kdepim-runtime/agents/nepomukfeeder/nepomukfeederagent.cpp:616

This bug may be a duplicate of or related to bug 313047.

Possible duplicates by query: bug 313047.

Reported using DrKonqi
Comment 1 Alex Merry 2013-01-13 17:05:33 UTC
Just checked that it still crashes if I clear out the nepomuk config and restart nepomuk before starting akonadi up again.

Here's a more coherent log snipped (from the fourth-ish time in a row that it crashed):

akonadi_nepomuk_feeder(9314)/libakonadi Akonadi::SessionPrivate::init: "akonadi_nepomuk_feeder"
akonadi_nepomuk_feeder(9314)/libakonadi Akonadi::SessionPrivate::reconnect: connectToServer "/home/alex/.local/share/akonadi/socket-typo/akonadiserver.socket"
akonadi_nepomuk_feeder(9314) XSyncBasedPoller::XSyncBasedPoller: 3 1
akonadi_nepomuk_feeder(9314) XSyncBasedPoller::XSyncBasedPoller: XSync seems available and ready
akonadi_nepomuk_feeder(9314) XSyncBasedPoller::setUpPoller: XSync Inited
akonadi_nepomuk_feeder(9314) XSyncBasedPoller::setUpPoller: Supported, init completed
akonadi_nepomuk_feeder(9314) FeederQueue::setIndexingSpeed: 0
akonadi_nepomuk_feeder(9314) FeederQueue::setIndexingSpeed: 1
Known subscriber "akonadi_nepomuk_feeder" subscribes again 
akonadi_nepomuk_feeder(9314) FeederQueue::continueIndexing:
akonadi_nepomuk_feeder(9314)/libakonadi Akonadi::SessionPrivate::dataReceived: Server protocol version is: 29
akonadi_nepomuk_feeder(9314) FindUnindexedItemsJob::retrieveAkonadiItems:
Database "akonadi" opened using driver "QMYSQL" 
akonadi_nepomuk_feeder(9314) FeederPluginloader::feederPluginsForMimeType: created new plugin
akonadi_nepomuk_feeder(9314) FindUnindexedItemsJob::itemsRetrieved: Akonadi Query took(ms):  40
akonadi_nepomuk_feeder(9314) FindUnindexedItemsJob::itemsRetrieved: copy took(ms):  0
akonadi_nepomuk_feeder(9314) FindUnindexedItemsJob::retrieveIndexedNepomukResources:
akonadi_nepomuk_feeder(9314) FindUnindexedItemsJob::retrieveIndexedNepomukResources: Nepomuk Query took(ms):  115
akonadi_nepomuk_feeder(9314) FindUnindexedItemsJob::retrieveIndexedNepomukResources: Found  0  unindexed items.
ASSERT: "!cols.isEmpty()" in file /home/kde-devel/src/kde/kdepimlibs/akonadi/collectionfetchjob.cpp, line 119
void Akonadi::NotificationSource::serviceUnregistered(const QString&) Notification source "akonadi_nepomuk_feeder" now serving: () 
void Akonadi::NotificationSource::unsubscribe() "akonadi_nepomuk_feeder" 
KCrash: crashing... crashRecursionCounter = 2
KCrash: Application Name = akonadi_nepomuk_feeder path = /home/kde-devel/kde/bin pid = 9314
KCrash: Arguments: /home/kde-devel/kde/bin/akonadi_nepomuk_feeder --nocrashhandler --identifier akonadi_nepomuk_feeder 
KCrash: Attempting to start /home/kde-devel/kde/lib/kde4/libexec/drkonqi from kdeinit
sock_file=/home/alex/.kde/socket-typo/kdeinit4__0
ProcessControl: Application '/home/kde-devel/kde/bin/akonadi_nepomuk_feeder' returned with exit code 253 (Unknown error)
"/home/kde-devel/kde/bin/akonadi_nepomuk_feeder" crashed too often and will not be restarted!
Comment 2 Allen Winter 2013-01-13 17:16:42 UTC
Alex, perhaps https://git.reviewboard.kde.org/r/108378/ fixes this?
Comment 3 Alex Merry 2013-01-13 17:23:22 UTC
Yep, that seems to fix it.
Comment 4 Allen Winter 2013-01-13 20:15:53 UTC
*** Bug 313047 has been marked as a duplicate of this bug. ***
Comment 5 Daniel Vrátil 2013-01-13 22:08:17 UTC
Git commit 114d49a7a09e5b31dfc65ab0c277a59dbd233c52 by Dan Vrátil.
Committed on 13/01/2013 at 23:07.
Pushed by dvratil into branch 'KDE/4.10'.

Fix NepomukFeeder crash when Akonadi is empty

When there are no items in Akonadi, there are no collections
to fetch. However Akonadi::CollectionFetchJob() asserts when
constructed with an empty collection list. This regression
was introduced in commit 1b2444.

REVIEW: 108378

M  +7    -4    agents/nepomukfeeder/nepomukfeederagent.cpp

http://commits.kde.org/kdepim-runtime/114d49a7a09e5b31dfc65ab0c277a59dbd233c52
Comment 6 Simon Andric 2013-01-14 23:56:30 UTC
Created attachment 76475 [details]
New crash information added by DrKonqi

akonadi_nepomuk_feeder (4.10) on KDE Platform 4.9.97 using Qt 4.8.5

- What I was doing when the application crashed:

same thing akonadi just crashed all of a sudden.

-- Backtrace (Reduced):
#8  0xb576a92f in __GI_raise (sig=sig@entry=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:63
#9  0xb576dec3 in __GI_abort () at abort.c:90
[...]
#13 0xb6969c0e in qt_assert (assertion=0xb6e123da "!cols.isEmpty()", file=0xb6e12380 "/build/buildd/project-neon-kdepimlibs-2+git20130113+r12922/akonadi/collectionfetchjob.cpp", line=119) at global/qglobal.cpp:2018
#14 0xb6cfe6f3 in Akonadi::CollectionFetchJob::CollectionFetchJob (this=0x9897758, cols=..., parent=0x9873470) at /build/buildd/project-neon-kdepimlibs-2+git20130113+r12922/akonadi/collectionfetchjob.cpp:119
#15 0x08054f7c in Akonadi::NepomukFeederAgent::foundUnindexedItems (this=0x9873470, job=0x98840a0) at /build/buildd/project-neon-kdepim-runtime-2+git20130113+r7932/agents/nepomukfeeder/nepomukfeederagent.cpp:486