Bug 352209 - Random crashes of the imap resource
Summary: Random crashes of the imap resource
Status: RESOLVED UNMAINTAINED
Alias: None
Product: Akonadi
Classification: Frameworks and Libraries
Component: server (show other bugs)
Version: GIT (master)
Platform: Other Linux
: NOR crash
Target Milestone: ---
Assignee: kdepim bugs
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-09-03 10:26 UTC by Christophe Marin
Modified: 2018-02-01 09:49 UTC (History)
2 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 Christophe Marin 2015-09-03 10:26:05 UTC
My build is almost up to date (~2 days ago)
Output:
12:00:50 - akonadi_imap_resource_0(2685) -  Akonadi::ItemSync::setFullSyncItems: Received:  697 In total:  8004  Wanted:  8484
12:00:51 - akonadi_imap_resource_0(2685) -  Akonadi::ItemSync::setFullSyncItems: Received:  297 In total:  8301  Wanted:  8484
12:00:51 - akonadi_imap_resource_0(2685) -  Akonadi::ItemSync::setFullSyncItems: Received:  183 In total:  8484  Wanted:  8484
12:00:51 - akonadi_imap_resource_0(2685) -  : Invalid command, the world is going to end!
12:00:51 - akonadi_imap_resource_0(2685) -  : QIODevice::read (QLocalSocket): device not open
12:00:51 - akonadi_imap_resource_0(2685) -  Akonadi::ConnectionThread::doReconnect: connectToServer "/tmp/akonadi-krop.tXn1wQ/akonadiserver.socket"
12:00:51 - akonadi_imap_resource_0(2685) -  : ASSERT: "false" in file /kde/src/5/akonadiserver/src/private/protocol.cpp, line 143
12:00:51 - Akonadi(17866) -  DebugPrivate::stream: Database "akonadi" opened using driver "QPSQL"
12:00:51 - Akonadi(17866) -  DebugPrivate::stream: void Akonadi::Server::NotificationSource::serviceUnregistered(const QString&) Notification source "akonadi_imap_resource_0_2685_EXSI2A" now serving: ()
12:00:51 - Akonadi(17866) -  DebugPrivate::stream: Lost connection to resource "org.freedesktop.Akonadi.Resource.akonadi_imap_resource_0" , discarding cached interface
12:00:51 - Akonadi(17866) -  DebugPrivate::stream: Unregistering search instance "akonadi_imap_resource_0"
12:00:52 - Akonadi(17864) -  : ProcessControl: Application /kde/inst/5/master/bin/akonadi_imap_resource stopped unexpectedly ( "Process crashed" )
12:00:52 - Akonadi(17864) -  : Application '/kde/inst/5/master/bin/akonadi_imap_resource' crashed too often. Giving up!


BT:

#5  0x00007f3948f00356 in operator<<(QDebug, Akonadi::Protocol::Command::Type) (_dbg=..., type=19) at /kde/src/5/akonadiserver/src/private/protocol.cpp:143
#6  0x00007f3948f234b0 in Akonadi::Protocol::DebugBlock::write<Akonadi::Protocol::Command::Type>(char const*, Akonadi::Protocol::Command::Type const&) (this=0x7fff11f57280, name=0x7f3948f49d9d "Command", val=@0x7fff11f5725f: 19) at /kde/src/5/akonadiserver/src/private/protocol.cpp:198
---Type <return> to continue, or q <return> to quit---
#7  0x00007f3948f0fec4 in Akonadi::Protocol::CommandPrivate::debugString(Akonadi::Protocol::DebugBlock&) const (this=0x7f3928058070, blck=...) at /kde/src/5/akonadiserver/src/private/protocol.cpp:260
#8  0x00007f3948f006a4 in Akonadi::Protocol::Command::debugString() const (this=0x7f3928057fd0) at /kde/src/5/akonadiserver/src/private/protocol.cpp:350
#9  0x00007f394e11d436 in Akonadi::Job::doHandleResponse(long long, Akonadi::Protocol::Command const&) (this=0x22a04d0, tag=0, command=...) at /kde/src/5/kdepimlibs/akonadi/src/core/jobs/job.cpp:351
#10 0x00007f394e1146e4 in Akonadi::ItemFetchJob::doHandleResponse(long long, Akonadi::Protocol::Command const&) (this=0x22a04d0, tag=0, response=...)
    at /kde/src/5/kdepimlibs/akonadi/src/core/jobs/itemfetchjob.cpp:189
#11 0x00007f394e11b9fb in Akonadi::JobPrivate::handleResponse(long long, Akonadi::Protocol::Command const&) (this=0x1fb1d00, tag=0, response=...) at /kde/src/5/kdepimlibs/akonadi/src/core/jobs/job.cpp:65
#12 0x00007f394e11b91f in Akonadi::JobPrivate::handleResponse(long long, Akonadi::Protocol::Command const&) (this=0x202bcd0, tag=0, response=...) at /kde/src/5/kdepimlibs/akonadi/src/core/jobs/job.cpp:49
#13 0x00007f394e11b91f in Akonadi::JobPrivate::handleResponse(long long, Akonadi::Protocol::Command const&) (this=0x229e2d0, tag=0, response=...) at /kde/src/5/kdepimlibs/akonadi/src/core/jobs/job.cpp:49
#14 0x00007f394e0de6bc in Akonadi::SessionPrivate::handleCommand(long long, Akonadi::Protocol::Command const&) (this=0x1d3bb00, tag=0, cmd=...) at /kde/src/5/kdepimlibs/akonadi/src/core/session.cpp:128
#15 0x00007f394e0e0297 in Akonadi::Session::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) (_o=0x1d1d150, _c=QMetaObject::InvokeMetaMethod, _id=4, _a=0x7f39280582b0)
    at /kde/build/5/kdepimlibs/akonadi/src/core/moc_session.cpp:117
#16 0x00007f394b444d79 in QObject::event(QEvent*) (this=0x1d1d150, e=<optimized out>) at kernel/qobject.cpp:1239
Comment 1 Christophe Marin 2015-09-09 09:24:15 UTC
Same crash today in the indexing agent after restarting it in akonadiconsole :

11:13:55 - akonadi_indexing_agent(18160) -  : Invalid command, the world is going to end!
11:13:55 - akonadi_indexing_agent(18160) -  : QIODevice::read (QLocalSocket): device not open
11:13:55 - akonadi_indexing_agent(18160) -  Akonadi::ConnectionThread::doReconnect: connectToServer "/tmp/akonadi-krop.tXn1wQ/akonadiserver.socket"
11:13:55 - Akonadi(17245) -  DebugPrivate::stream: Database "akonadi" opened using driver "QPSQL"
11:13:55 - akonadi_indexing_agent(18160) -  : ASSERT: "false" in file /kde/src/5/akonadiserver/src/private/protocol.cpp, line 143
11:13:55 - Akonadi(17244) -  : ProcessControl: Application /kde/inst/5/master/bin/akonadi_indexing_agent stopped unexpectedly ( "Process crashed" )
11:13:55 - Akonadi(17244) -  : Application '/kde/inst/5/master/bin/akonadi_indexing_agent' crashed. No restart!
11:13:55 - Akonadi(17245) -  DebugPrivate::stream: void Akonadi::Server::NotificationSource::serviceUnregistered(const QString&) Notification source "akonadi_indexing_agent_18160_QuozQH" now serving: ()
Comment 2 Daniel Vrátil 2015-09-13 21:38:42 UTC
According to Volker there is a bug in Qt which causes that QIODevice::waitForReadyRead() sometimes does not get the notification from Qt internals that there are more data available in the socket, so the function times out and triggers our error handling code.

He told me they were trying to hunt the issue down long time ago but failed, mostly because it is extremely difficult to reproduce it - it just happens sometimes, but it's probably not possible to reproduce it manually, or at least not reliably enough to investigate.
Comment 3 Denis Kurz 2017-06-23 20:20:46 UTC
This bug has never been confirmed for a Kontact version that is based on KDE Frameworks, except possibly a Technology Preview version 5.0.x. Those versions differ significantly from the old 4.x series. Therefore, I plan to close it in around two or three months. In the meantime, it is set to WAITINGFORINFO to give reporters the opportunity to check if it is still valid. As soon as someone confirms it for a recent version (at least 5.1, ideally even more recent), I'll gladly reopen it.

Please understand that we lack the manpower to triage bugs reported for versions almost two years beyond their end of life.
Comment 4 Denis Kurz 2018-02-01 09:49:46 UTC
Just as announced in my last comment, I close this bug. If you encounter it again in a recent version (at least 5.1 aka 15.12; preferably much more recent), please open a new one unless it already exists. Thank you for all your input.