Summary: | Uncought exception in signal handler in Calendar resource | ||
---|---|---|---|
Product: | [Frameworks and Libraries] libkgapi | Reporter: | Vojtěch Zeisek <Vojtech.Zeisek> |
Component: | calendar | Assignee: | Daniel Vrátil <dvratil> |
Status: | RESOLVED FIXED | ||
Severity: | crash | CC: | bernardo, eggert, frederic.coiffier |
Priority: | NOR | ||
Version: | unspecified | ||
Target Milestone: | --- | ||
Platform: | openSUSE | ||
OS: | Linux | ||
Latest Commit: | http://commits.kde.org/akonadi-google/da3070cbb74d1bd944729510546dcfdb4cded9ff | Version Fixed In: | 0.3.1 |
Sentry Crash Report: | |||
Attachments: | Logs |
Description
Vojtěch Zeisek
2012-04-10 07:51:43 UTC
Please run Akonadi from console (open konsole, run "akonadictl restart") and then try to reproduce the crash. When this crash occurs, you should see in the console something like "Qt has caught an exception thrown from an event handler. Throwing exceptions from an event handler is not supported in Qt...blahblahblah" Followed by some more detailed description of the exception (in second paragraph). If you manage to get this description, it would be really awesome :) Created attachment 70284 [details] Logs I started akonadiconsole and tried to restart Akonadi. During restart, I get a lot of bus (see attachment), but no crash. As a result, calendars were totally messed up. I had duplicated calendars within calendar folders, calendars from one Google account showing under another account and so on. See also bug #297837. Sorry, I didn't state it clear before. The point is in waiting for the resource to crash (or trying to make it crash :)) and then just posting the last few paragraphs with information about the crash, not the entire Akonadi log :) Btw the ouput from console is usually sufficient, no need to post Akonadi Console or Akonadi error logs. *** Bug 298182 has been marked as a duplicate of this bug. *** I get this backtrace : #0 __cxxabiv1::__cxa_rethrow () at /hdf/tmp/portage/sys-devel/gcc-4.5.3-r2/work/gcc-4.5.3/libstdc++-v3/libsupc++/eh_throw.cc:88 #1 0x0000003f40b810b0 in QCoreApplication::notifyInternal (this=0x7fff2fc4d870, receiver=0x16ff100, event=0x178fa40) at kernel/qcoreapplication.cpp:879 #2 0x0000003f40b84657 in sendEvent (event=0x178fa40, receiver=0x16ff100) at kernel/qcoreapplication.h:231 #3 QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x145c1f0) at kernel/qcoreapplication.cpp:1500 #4 0x0000003f40bafff3 in sendPostedEvents () at kernel/qcoreapplication.h:236 #5 postEventSourceDispatch (s=<optimized out>) at kernel/qeventdispatcher_glib.cpp:279 #6 0x0000003f3ee4a0d9 in g_main_dispatch (context=0x14855e0) at gmain.c:2515 #7 g_main_context_dispatch (context=0x14855e0) at gmain.c:3052 #8 0x0000003f3ee4a498 in g_main_context_iterate (context=0x14855e0, block=1, dispatch=1, self=<optimized out>) at gmain.c:3123 #9 0x0000003f3ee4a554 in g_main_context_iteration (context=0x14855e0, may_block=1) at gmain.c:3184 #10 0x0000003f40bb018f in QEventDispatcherGlib::processEvents (this=0x145dad0, flags=...) at kernel/qeventdispatcher_glib.cpp:424 #11 0x0000003f4267c80e in QGuiEventDispatcherGlib::processEvents (this=<optimized out>, flags=...) at kernel/qguieventdispatcher_glib.cpp:204 #12 0x0000003f40b800c2 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149 #13 0x0000003f40b80375 in QEventLoop::exec (this=0x7fff2fc4d7e0, flags=...) at kernel/qeventloop.cpp:204 #14 0x0000003f40b84afb in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1148 #15 0x0000003f539607c6 in Akonadi::ResourceBase::init (r=0x15c6f20) at /hdf/tmp/portage/kde-base/kdepimlibs-4.8.2/work/kdepimlibs-4.8.2/akonadi/resourcebase.cpp:412 #16 0x0000000000414f08 in init<CalendarResource> (argv=<optimized out>, argc=<optimized out>) at /usr/include/KDE/Akonadi/../../akonadi/resourcebase.h:188 #17 main (argc=<optimized out>, argv=<optimized out>) at /hdf/tmp/portage/kde-misc/akonadi-google-9999/work/akonadi-google-9999/calendar/calendarresource.cpp:659 Frederic, could you please try to reproduce the crash with the latest git? I've did some error handling improvements and hopefully it's gone now :) I get the same crash with the last git commit (branch master) : commit b1c0571e39898d03772d2b801098636a99ef5ddf Author: Script Kiddy <scripty@kde.org> Date: Tue Apr 17 16:17:08 2012 +0200 SVN_SILENT made messages (.desktop file) I forgot to provide you the output message corresponding to the crash : JSonScanner::yylex - unknown char, returning -1 Qt has caught an exception thrown from an event handler. Throwing exceptions from an event handler is not supported in Qt. You must reimplement QApplication::notify() and catch all exceptions there. terminate called after throwing an instance of 'KGoogle::Exception::InvalidAccount' what(): The account is invalid. KCrash: Application 'akonadi_googlecalendar_resource' crashing... Thank you Frederic, this is an extremely useful information! *** Bug 298473 has been marked as a duplicate of this bug. *** Could you please try recent git? I think I got it, but since I am not able to reproduce the crashes, it's a kind of a shooting on blind. I'm beginning to think that using exceptions was not a good idea after all... Yes, you get it : the crash is gone. I found the problem behind the crash : it seems there was a problem with my task list. Akonadiconsole said it cannot fetch the task list. I had to remove my Account in the native configuration (in akonadiconsole) and to add it again. And now, my calendar is correctly synchronized. *** Bug 298887 has been marked as a duplicate of this bug. *** |