Bug 301647

Summary: Akonadi Google randomly crashes
Product: [Frameworks and Libraries] Akonadi Reporter: Vojtěch Zeisek <Vojtech.Zeisek>
Component: Google ResourceAssignee: Daniel Vrátil <dvratil>
Status: RESOLVED FIXED    
Severity: crash CC: aspamkiller, balcaen.john, bugs, kde, kdepim-bugs, lozol, nick, wim.mintiens
Priority: NOR    
Version: 4.9   
Target Milestone: ---   
Platform: openSUSE   
OS: Linux   
Latest Commit: Version Fixed In: 4.11
Attachments: New crash information added by DrKonqi

Description Vojtěch Zeisek 2012-06-11 13:31:34 UTC
Application: akonadi_googlecalendar_resource (4.8)
KDE Platform Version: 4.8.4 (4.8.4) "release 511"
Qt Version: 4.8.2
Operating System: Linux 3.1.10-1.9-desktop x86_64
Distribution: "openSUSE 12.1 (x86_64)"

-- Information about the crash:
After upgrade to KDE 4.8.4, Akonadi Google sometimes randomly crashes. No user action is required.

The crash can be reproduced some of the time.

-- Backtrace:
Application: Google Calendars and Tasks (akonadi_googlecalendar_resource), signal: Segmentation fault
[KCrash Handler]
#6  QSharedDataPointer (o=..., this=0x7fff9062e8b0) at /usr/include/QtCore/qshareddata.h:93
#7  assignEntityPrivate (one=..., other=...) at /usr/src/debug/kdepimlibs-4.8.4/akonadi/entity.cpp:49
#8  0x00007ff30ff01e14 in Akonadi::Entity::Entity (this=<optimized out>, other=<optimized out>) at /usr/src/debug/kdepimlibs-4.8.4/akonadi/entity.cpp:56
#9  0x00007ff30ff02558 in Akonadi::Entity::setParentCollection (this=0x7fff9062e980, parent=...) at /usr/src/debug/kdepimlibs-4.8.4/akonadi/entity.cpp:196
#10 0x000000000041fa95 in CalendarResource::taskListReceived (this=0x80b1f0, job=<optimized out>) at /usr/src/debug/akonadi-google-0.3.1/calendar/resource_tasks.cpp:99
#11 0x00007ff30f86cc41 in QMetaObject::activate (sender=0x94e070, m=<optimized out>, local_signal_index=<optimized out>, argv=0x7fff9062eb80) at kernel/qobject.cpp:3556
#12 0x00007ff30e3d8c9f in KJob::finished (this=<optimized out>, _t1=0x94e070) at /usr/src/debug/kdelibs-4.8.4/build/kdecore/kjob.moc:187
#13 0x00007ff30e3d8f05 in KJob::emitResult (this=0x94e070) at /usr/src/debug/kdelibs-4.8.4/kdecore/jobs/kjob.cpp:316
#14 0x00007ff30f86cc41 in QMetaObject::activate (sender=0xcafc40, m=<optimized out>, local_signal_index=<optimized out>, argv=0x7fff9062ece0) at kernel/qobject.cpp:3556
#15 0x00007ff30de18312 in KGoogle::AccessManager::requestFinished(KGoogle::Request*) () from /usr/lib64/libkgoogle.so.0
#16 0x00007ff30de1cd38 in ?? () from /usr/lib64/libkgoogle.so.0
#17 0x00007ff30f86cc41 in QMetaObject::activate (sender=0x707260, m=<optimized out>, local_signal_index=<optimized out>, argv=0x7fff9062f920) at kernel/qobject.cpp:3556
#18 0x00007ff30cbe0b72 in QNetworkAccessManager::finished (this=<optimized out>, _t1=0xc98050) at .moc/release-shared/moc_qnetworkaccessmanager.cpp:177
#19 0x00007ff30cbe11c9 in QNetworkAccessManagerPrivate::_q_replyFinished (this=<optimized out>) at access/qnetworkaccessmanager.cpp:1014
#20 0x00007ff30f86cc41 in QMetaObject::activate (sender=0xc98050, m=<optimized out>, local_signal_index=<optimized out>, argv=0x0) at kernel/qobject.cpp:3556
#21 0x00007ff30f8608a1 in QMetaMethod::invoke (this=0x7fff9062fd70, object=0xc98050, connectionType=Qt::DirectConnection, returnValue=..., val0=..., val1=..., val2=..., val3=..., val4=..., val5=..., val6=..., val7=..., val8=..., val9=...) at kernel/qmetaobject.cpp:1664
#22 0x00007ff30f862bb0 in QMetaObject::invokeMethod (obj=0xc98050, member=<optimized out>, type=Qt::AutoConnection, ret=..., val0=..., val1=..., val2=..., val3=..., val4=..., val5=..., val6=..., val7=..., val8=..., val9=...) at kernel/qmetaobject.cpp:1179
#23 0x00007ff30c5387c4 in invokeMethod (val9=..., val8=..., val7=..., val6=..., val5=..., val4=..., val3=..., val2=..., val1=..., val0=..., type=Qt::AutoConnection, member=0x7ff30c6b7742 "finished", obj=0xc98050) at /usr/include/QtCore/qobjectdefs.h:418
#24 KDEPrivate::AccessManagerReply::emitFinished (this=0xc98050, state=<optimized out>, type=Qt::AutoConnection) at /usr/src/debug/kdelibs-4.8.4/kio/kio/accessmanagerreply_p.cpp:484
#25 0x00007ff30c539d33 in KDEPrivate::AccessManagerReply::slotResult (this=0xc98050, kJob=0xcd9240) at /usr/src/debug/kdelibs-4.8.4/kio/kio/accessmanagerreply_p.cpp:427
#26 0x00007ff30f86cc41 in QMetaObject::activate (sender=0xcd9240, m=<optimized out>, local_signal_index=<optimized out>, argv=0x7fff906302d0) at kernel/qobject.cpp:3556
#27 0x00007ff30e3d8ed2 in KJob::result (this=<optimized out>, _t1=0xcd9240) at /usr/src/debug/kdelibs-4.8.4/build/kdecore/kjob.moc:208
#28 0x00007ff30e3d8f10 in KJob::emitResult (this=0xcd9240) at /usr/src/debug/kdelibs-4.8.4/kdecore/jobs/kjob.cpp:318
#29 0x00007ff30c5721a4 in KIO::SimpleJob::slotFinished (this=0xcd9240) at /usr/src/debug/kdelibs-4.8.4/kio/kio/job.cpp:494
#30 0x00007ff30c579c2d in KIO::TransferJob::slotFinished (this=0xcd9240) at /usr/src/debug/kdelibs-4.8.4/kio/kio/job.cpp:1081
#31 0x00007ff30f86cc41 in QMetaObject::activate (sender=0xcdaec0, m=<optimized out>, local_signal_index=<optimized out>, argv=0x0) at kernel/qobject.cpp:3556
#32 0x00007ff30c620361 in KIO::SlaveInterface::dispatch (this=<optimized out>, _cmd=104, rawdata=...) at /usr/src/debug/kdelibs-4.8.4/kio/kio/slaveinterface.cpp:172
#33 0x00007ff30c61d0b5 in KIO::SlaveInterface::dispatch (this=<optimized out>) at /usr/src/debug/kdelibs-4.8.4/kio/kio/slaveinterface.cpp:88
#34 0x00007ff30c61032e in KIO::Slave::gotInput (this=0xcdaec0) at /usr/src/debug/kdelibs-4.8.4/kio/kio/slave.cpp:344
#35 0x00007ff30f86cc41 in QMetaObject::activate (sender=0x70f4e0, m=<optimized out>, local_signal_index=<optimized out>, argv=0x0) at kernel/qobject.cpp:3556
#36 0x00007ff30c542b17 in dequeue (this=<optimized out>) at /usr/src/debug/kdelibs-4.8.4/kio/kio/connection.cpp:82
#37 KIO::ConnectionPrivate::dequeue (this=0xcbb3f0) at /usr/src/debug/kdelibs-4.8.4/kio/kio/connection.cpp:71
#38 0x00007ff30f871e06 in QObject::event (this=0x70f4e0, e=<optimized out>) at kernel/qobject.cpp:1204
#39 0x00007ff30ebdbfe4 in notify_helper (e=0x8651f0, receiver=0x70f4e0, this=0x6671b0) at kernel/qapplication.cpp:4551
#40 QApplicationPrivate::notify_helper (this=0x6671b0, receiver=0x70f4e0, e=0x8651f0) at kernel/qapplication.cpp:4523
#41 0x00007ff30ebe0db3 in QApplication::notify (this=0x7fff90631560, receiver=0x70f4e0, e=0x8651f0) at kernel/qapplication.cpp:4412
#42 0x00007ff30d9c7746 in KApplication::notify (this=0x7fff90631560, receiver=0x70f4e0, event=0x8651f0) at /usr/src/debug/kdelibs-4.8.4/kdeui/kernel/kapplication.cpp:311
#43 0x00007ff30f858d0c in QCoreApplication::notifyInternal (this=0x7fff90631560, receiver=0x70f4e0, event=0x8651f0) at kernel/qcoreapplication.cpp:915
#44 0x00007ff30f85c5ba in sendEvent (event=0x8651f0, receiver=0x70f4e0) at kernel/qcoreapplication.h:231
#45 QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x6448b0) at kernel/qcoreapplication.cpp:1539
#46 0x00007ff30f8879a3 in sendPostedEvents () at kernel/qcoreapplication.h:236
#47 postEventSourceDispatch (s=0x66cb50) at kernel/qeventdispatcher_glib.cpp:279
#48 0x00007ff30abdb58d in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0
#49 0x00007ff30abdbd88 in ?? () from /usr/lib64/libglib-2.0.so.0
#50 0x00007ff30abdbf59 in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#51 0x00007ff30f887dcf in QEventDispatcherGlib::processEvents (this=0x644170, flags=<optimized out>) at kernel/qeventdispatcher_glib.cpp:424
#52 0x00007ff30ec7f69e in QGuiEventDispatcherGlib::processEvents (this=<optimized out>, flags=<optimized out>) at kernel/qguieventdispatcher_glib.cpp:204
#53 0x00007ff30f857842 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#54 0x00007ff30f857a97 in QEventLoop::exec (this=0x7fff906314e0, flags=...) at kernel/qeventloop.cpp:204
#55 0x00007ff30f85c8b5 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1187
#56 0x00007ff30fefb0e7 in Akonadi::ResourceBase::init (r=0x80b1f0) at /usr/src/debug/kdepimlibs-4.8.4/akonadi/resourcebase.cpp:412
#57 0x0000000000417666 in Akonadi::ResourceBase::init<CalendarResource> (argc=<optimized out>, argv=<optimized out>) at /usr/include/akonadi/resourcebase.h:188
#58 0x00007ff30ceee23d in __libc_start_main () from /lib64/libc.so.6
#59 0x000000000040ea81 in _start () at ../sysdeps/x86_64/elf/start.S:113

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

Possible duplicates by query: bug 299330, bug 293311, bug 292983, bug 290342, bug 290189.

Reported using DrKonqi
Comment 1 Myriam Schweingruber 2012-10-11 09:59:15 UTC
*** Bug 308070 has been marked as a duplicate of this bug. ***
Comment 2 Myriam Schweingruber 2012-10-11 09:59:50 UTC
Confirmed by duplicate.
Comment 3 Balcaen John 2012-11-01 17:56:14 UTC
Created attachment 74920 [details]
New crash information added by DrKonqi

akonadi_googlecalendar_resource (4.9) on KDE Platform 4.9.2 using Qt 4.8.3

It's also crashing with KDE 4.9.2 & libkgapi 0.4.3

-- Backtrace (Reduced):
#6  0x00007f5df7119455 in assignEntityPrivate(QSharedDataPointer<Akonadi::EntityPrivate>&, QSharedDataPointer<Akonadi::EntityPrivate> const&) () from /lib64/libakonadi-kde.so.4
#7  0x00007f5df711953d in Akonadi::Entity::Entity(Akonadi::Entity const&) () from /lib64/libakonadi-kde.so.4
#8  0x00007f5df7119682 in Akonadi::Entity::setParentCollection(Akonadi::Collection const&) () from /lib64/libakonadi-kde.so.4
#9  0x000000000041ff87 in CalendarResource::calendarsReceived(KJob*) ()
[...]
#11 0x00007f5df5594bff in KJob::finished (this=this@entry=0x275e970, _t1=_t1@entry=0x275e970) at /usr/src/debug/kdelibs-4.9.2/build/kdecore/kjob.moc:187
Comment 4 Daniel Vrátil 2012-12-19 23:01:06 UTC
*** Bug 311937 has been marked as a duplicate of this bug. ***
Comment 5 Daniel Vrátil 2013-02-28 12:53:14 UTC
Git commit dc1d1e496990b7b65fb422f71bfe82ac751a93e4 by Dan Vrátil.
Committed on 28/02/2013 at 13:19.
Pushed by dvratil into branch 'master'.

Port Akonadi resources for Google services to LibKGAPI2

Resources now use the new job-based API, which is more
flexible and solves many problems that were very hard
to fix with the previous API.

Lot of duplicated code has been factored out and moved
to /resources/google/common.

Featurewise, Google Contacts resources now fully supports
contacts groups and fetching contacts photos has been
notably improved, Google Calendar resource has improved
tasks handling and both resources have better status and
progress reporting and should be faster and more stable.
Related: bug 309320, bug 310741, bug 313368, bug 281695, bug 294639

FIXED-IN: 4.11

DIGEST:

M  +1    -1    CMakeLists.txt
M  +1    -1    resources/google/CMakeLists.txt
M  +5    -10   resources/google/calendar/CMakeLists.txt
D  +0    -102  resources/google/calendar/calendareditor.cpp
D  +0    -55   resources/google/calendar/calendareditor.h
M  +616  -519  resources/google/calendar/calendarresource.cpp
M  +35   -78   resources/google/calendar/calendarresource.h
M  +57   -50   resources/google/calendar/defaultreminderattribute.cpp
M  +17   -20   resources/google/calendar/defaultreminderattribute.h
D  +0    -298  resources/google/calendar/resource_events.cpp
M  +0    -166  resources/google/calendar/resource_tasks.cpp
M  +2    -22   resources/google/calendar/settings.cpp
M  +3    -23   resources/google/calendar/settings.h
M  +128  -731  resources/google/calendar/settingsdialog.cpp
M  +18   -51   resources/google/calendar/settingsdialog.h
D  +0    -52   resources/google/calendar/tasklisteditor.cpp
D  +0    -49   resources/google/calendar/tasklisteditor.h
D  +0    -128  resources/google/calendar/ui/calendar_editor.ui
D  +0    -204  resources/google/calendar/ui/settingsdialog.ui
D  +0    -85   resources/google/calendar/ui/tasklist_editor.ui
A  +244  -0    resources/google/common/googleaccountmanager.cpp     [License: GPL (v2+)]
A  +67   -0    resources/google/common/googleaccountmanager.h     [License: GPL (v2+)]
A  +275  -0    resources/google/common/googleresource.cpp     [License: GPL (v3+)]
A  +109  -0    resources/google/common/googleresource.h     [License: GPL (v3+)]
A  +55   -0    resources/google/common/googlesettings.cpp     [License: GPL (v3+)]
A  +58   -0    resources/google/common/googlesettings.h     [License: GPL (v3+)]
A  +213  -0    resources/google/common/googlesettingsdialog.cpp     [License: GPL (v3+)]
A  +77   -0    resources/google/common/googlesettingsdialog.h     [License: GPL (v3+)]
M  +4    -2    resources/google/contacts/CMakeLists.txt
M  +373  -593  resources/google/contacts/contactsresource.cpp
M  +31   -69   resources/google/contacts/contactsresource.h
M  +3    -24   resources/google/contacts/settings.cpp
M  +3    -23   resources/google/contacts/settings.h
M  +19   -128  resources/google/contacts/settingsdialog.cpp
M  +5    -23   resources/google/contacts/settingsdialog.h
D  +0    -38   resources/google/contacts/ui/groupeditor.ui
D  +0    -61   resources/google/contacts/ui/settingsdialog.ui

http://commits.kde.org/kdepim-runtime/dc1d1e496990b7b65fb422f71bfe82ac751a93e4
Comment 6 Daniel Vrátil 2013-03-19 22:43:33 UTC
*** Bug 316774 has been marked as a duplicate of this bug. ***
Comment 7 Jekyll Wu 2013-04-01 14:53:35 UTC
*** Bug 317681 has been marked as a duplicate of this bug. ***
Comment 8 Daniel Vrátil 2013-04-18 08:29:52 UTC
*** Bug 318503 has been marked as a duplicate of this bug. ***
Comment 9 Daniel Vrátil 2013-05-08 23:53:38 UTC
*** Bug 319478 has been marked as a duplicate of this bug. ***
Comment 10 Jekyll Wu 2013-05-22 16:46:28 UTC
*** Bug 320138 has been marked as a duplicate of this bug. ***
Comment 11 Jekyll Wu 2013-05-26 00:49:21 UTC
*** Bug 320272 has been marked as a duplicate of this bug. ***
Comment 12 Jekyll Wu 2013-06-02 15:08:26 UTC
*** Bug 320611 has been marked as a duplicate of this bug. ***
Comment 13 Jekyll Wu 2013-08-02 22:58:17 UTC
*** Bug 323115 has been marked as a duplicate of this bug. ***