Bug 326815

Summary: Akonadi Nepomuk Tags crashes on startup
Product: [Frameworks and Libraries] Akonadi Reporter: Vojtěch Zeisek <Vojtech.Zeisek>
Component: Tag ResourceAssignee: kdepim bugs <kdepim-bugs>
Status: RESOLVED UNMAINTAINED    
Severity: crash CC: dvratil, martin.ruessler, mollekopf, vkrause
Priority: NOR Keywords: drkonqi
Version: 4.11   
Target Milestone: ---   
Platform: openSUSE   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description Vojtěch Zeisek 2013-10-29 09:49:41 UTC
Application: akonadi_nepomuktag_resource (4.11)
KDE Platform Version: 4.11.2
Qt Version: 4.8.5
Operating System: Linux 3.7.10-1.16-desktop x86_64
Distribution: "openSUSE 12.3 (x86_64)"

-- Information about the crash:
It crashes every time I login into KDE. Restart doesn't work for first time, I have to restart it several times.

The crash can be reproduced every time.

-- Backtrace:
Application: Značky typu Značky Nepomuk (virtuální složky) (akonadi_nepomuktag_resource), signal: Aborted
Using host libthread_db library "/lib64/libthread_db.so.1".
[KCrash Handler]
#5  0x00007f9e1c7523d5 in raise () from /lib64/libc.so.6
#6  0x00007f9e1c753858 in abort () from /lib64/libc.so.6
#7  0x00007f9e1cd468cd in __gnu_cxx::__verbose_terminate_handler() () from /usr/lib64/libstdc++.so.6
#8  0x00007f9e1cd449c6 in ?? () from /usr/lib64/libstdc++.so.6
#9  0x00007f9e1cd449f3 in std::terminate() () from /usr/lib64/libstdc++.so.6
#10 0x00007f9e1cd44c66 in __cxa_rethrow () from /usr/lib64/libstdc++.so.6
#11 0x00007f9e1d7770e4 in QEventLoop::exec (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:218
#12 0x00007f9e1d77bbb8 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1221
#13 0x00007f9e1dc2fb13 in Akonadi::ResourceBase::init (r=0x1be1b00) at /usr/src/debug/kdepimlibs-4.11.2/akonadi/resourcebase.cpp:548
#14 0x000000000040b173 in _start ()

Possible duplicates by query: bug 326391, bug 326242, bug 325911, bug 325859, bug 325777.

Reported using DrKonqi
Comment 1 Daniel Vrátil 2013-10-29 20:24:23 UTC
Could you please attach GDB to the resource, and "catch throw"? This will interrupt the program when the exception is thrown, so you will be able to get a full backtrace of where the exception is thrown from. 

Steps how to attach GDB to a resource on startup is described here [0], just replace "knut" with "nepomuktag"

[0] http://techbase.kde.org/Projects/PIM/Akonadi/Development_Tools#Attaching_gdb_at_startup
Comment 2 Vojtěch Zeisek 2013-10-31 14:33:10 UTC
$ export AKONADI_DEBUG_WAIT=nepomuktag.
$ ps -ef | grep akonadi_control
vojta    16394     1  0 15:25 ?        00:00:00 /usr/bin/akonadi_control
vojta    17403 16723  0 15:27 pts/0    00:00:00 grep --color=auto akonadi_control
$ akonadictl stop
$ akonadi_control
Connecting to deprecated signal QDBusConnectionInterface::serviceOwnerChanged(QString,QString,QString)                                                                                                                                                                    
search paths:  ("/usr/lib64/mpi/gcc/openmpi/bin", "/home/vojta/bin", "/usr/local/bin", "/usr/bin", "/bin", "/usr/bin/X11", "/usr/X11R6/bin", "/usr/games", "/opt/bin", "/opt/kde3/bin", "/sbin", "/usr/sbin", "/home/vojta/bin", "/home/vojta/bin/blast/bin", "/sbin", "/usr/sbin", "/home/vojta/bin", "/home/vojta/bin/blast/bin", "/usr/sbin", "/usr/local/sbin", "/usr/local/libexec", "/usr/libexec", "/opt/mysql/libexec", "/opt/local/lib/mysql5/bin", "/opt/mysql/sbin")                                                                     
akonadi.collectionattributetable                   OK                                                                                                                                                                                                                     
akonadi.collectionmimetyperelation                 OK                                                                                                                                                                                                                     
akonadi.collectionpimitemrelation                  OK                                                                                                                                                                                                                     
akonadi.collectiontable                            OK                                                                                                                                                                                                                     
akonadi.flagtable                                  OK                                                                                                                                                                                                                     
akonadi.mimetypetable                              OK                                                                                                                                                                                                                     
akonadi.parttable                                  OK                                                                                                                                                                                                                     
akonadi.pimitemflagrelation                        OK                                                                                                                                                                                                                     
akonadi.pimitemtable                               OK                                                                                                                                                                                                                     
akonadi.resourcetable                              OK                                                                                                                                                                                                                     
akonadi.schemaversiontable                         OK                                                                                                                                                                                                                     
mysql.columns_priv                                 OK                                                                                                                                                                                                                     
mysql.db                                           OK                                                                                                                                                                                                                     
mysql.event                                        OK                                                                                                                                                                                                                     
mysql.func                                         OK                                                                                                                                                                                                                     
mysql.help_category                                OK                                                                                                                                                                                                                     
mysql.help_keyword                                 OK                                                                                                                                                                                                                     
mysql.help_relation                                OK                                                                                                                                                                                                                     
mysql.help_topic                                   OK                                                                                                                                                                                                                     
mysql.host                                         OK                                                                                                                                                                                                                     
mysql.ndb_binlog_index                             OK                                                                                                                                                                                                                     
mysql.plugin                                       OK                                                                                                                                                                                                                     
mysql.proc                                         OK
mysql.procs_priv                                   OK
mysql.proxies_priv                                 OK
mysql.servers                                      OK
mysql.tables_priv                                  OK
mysql.time_zone                                    OK
mysql.time_zone_leap_second                        OK
mysql.time_zone_name                               OK
mysql.time_zone_transition                         OK
mysql.time_zone_transition_type                    OK
mysql.user                                         OK
Connecting to deprecated signal QDBusConnectionInterface::serviceOwnerChanged(QString,QString,QString)
The query MUST contain exactly one required property (http://akonadi-project.org/ontologies/aneo#akonadiItemId), if another property is additionally requested or the akonadiItemId is missing the search will fail (due to this hack) 
"select distinct ?r ?reqProp1 (bif:concat(bif:search_excerpt(bif:vector('Kuldicka'), ?v7),bif:search_excerpt(bif:vector('Kuldicka'), ?v8),bif:search_excerpt(bif:vector('Kuldicka'), ?v10),bif:search_excerpt(bif:vector('Kuldicka'), ?v6))) as ?_n_f_t_m_ex_ wh" 
search paths:  ("/usr/lib64/mpi/gcc/openmpi/bin", "/home/vojta/bin", "/usr/local/bin", "/usr/bin", "/bin", "/usr/bin/X11", "/usr/X11R6/bin", "/usr/games", "/opt/bin", "/opt/kde3/bin", "/sbin", "/usr/sbin", "/home/vojta/bin", "/home/vojta/bin/blast/bin", "/sbin", "/usr/sbin", "/home/vojta/bin", "/home/vojta/bin/blast/bin") 
search paths:  ("/home/vojta/.kde4/lib64/kde4/plugins/", "/usr/lib64/kde4/plugins/", "/usr/lib64/qt4/plugins", "/usr/bin", "/usr/lib64/kde4/plugins", "/home/vojta/.kde4/lib64/kde4/", "/usr/lib64/kde4/") 
AkonadiAgentServer(17607)/libakonadi Akonadi::AgentManagerPrivate::createDBusInterface: AgentManager failed to get a valid AgentManager DBus interface. Error is: 1 "org.freedesktop.DBus.Error.NameHasNoOwner" "Could not get owner of name 'org.freedesktop.Akonadi.Control': no such name" 
search paths:  ("/home/vojta/.kde4/lib64/kde4/plugins/", "/usr/lib64/kde4/plugins/", "/usr/lib64/qt4/plugins", "/usr/bin", "/usr/lib64/kde4/plugins", "/home/vojta/.kde4/lib64/kde4/", "/usr/lib64/kde4/") 
search paths:  ("/home/vojta/.kde4/lib64/kde4/plugins/", "/usr/lib64/kde4/plugins/", "/usr/lib64/qt4/plugins", "/usr/bin", "/usr/lib64/kde4/plugins", "/home/vojta/.kde4/lib64/kde4/", "/usr/lib64/kde4/") 
"Cannot connect to agent instance with identifier 'akonadi_imap_resource_14', error message: 'Could not get owner of name 'org.freedesktop.Akonadi.Resource.akonadi_imap_resource_14': no such name'"
"Cannot connect to agent instance with identifier 'akonadi_imap_resource_14', error message: 'Could not get owner of name 'org.freedesktop.Akonadi.Resource.akonadi_imap_resource_14': no such name'"
akonadi_kabc_resource_1(17622)/kio (KDirWatch) KDirWatchPrivate::removeEntry: doesn't know "/home/vojta/.kde4/share/apps/kabc" 
akonadi_nepomuk_feeder(17629) FeederPluginloader::feederPluginsForMimeType: No feeder for type  "application/x-vnd.kde.notes"  found 
akonadi_nepomuk_feeder(17629) FeederPluginloader::feederPluginsForMimeType: No feeder for type  "text/calendar"  found 
akonadi_nepomuk_feeder(17629) FeederPluginloader::feederPluginsForMimeType: No feeder for type  "application/x-xbel"  found 
akonadi_nepomuk_feeder(17629) FeederPluginloader::feederPluginsForMimeType: No feeder for type  "application/x-vnd.akonadi.collection.virtual"  found 
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 'Akonadi::Exception'
  what():  Akonadi::Exception: No remote identifier specified
KCrash: Application 'akonadi_nepomuktag_resource' crashing...
KCrash: Attempting to start /usr/lib64/kde4/libexec/drkonqi from kdeinit
sock_file=/home/vojta/.kde4/socket-veles.site/kdeinit4__0
ProcessControl: Application '/usr/bin/akonadi_nepomuktag_resource' returned with exit code 253 (Unknown error)
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 'Akonadi::Exception'
  what():  Akonadi::Exception: No remote identifier specified
KCrash: Application 'akonadi_nepomuktag_resource' crashing...
KCrash: Attempting to start /usr/lib64/kde4/libexec/drkonqi from kdeinit
sock_file=/home/vojta/.kde4/socket-veles.site/kdeinit4__0
ProcessControl: Application '/usr/bin/akonadi_nepomuktag_resource' returned with exit code 253 (Unknown error)
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 'Akonadi::Exception'
  what():  Akonadi::Exception: No remote identifier specified
KCrash: Application 'akonadi_nepomuktag_resource' crashing...
KCrash: Attempting to start /usr/lib64/kde4/libexec/drkonqi from kdeinit
sock_file=/home/vojta/.kde4/socket-veles.site/kdeinit4__0
ProcessControl: Application '/usr/bin/akonadi_nepomuktag_resource' returned with exit code 253 (Unknown error)
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 'Akonadi::Exception'
  what():  Akonadi::Exception: No remote identifier specified
KCrash: Application 'akonadi_nepomuktag_resource' crashing...
KCrash: Attempting to start /usr/lib64/kde4/libexec/drkonqi from kdeinit
sock_file=/home/vojta/.kde4/socket-veles.site/kdeinit4__0
ProcessControl: Application '/usr/bin/akonadi_nepomuktag_resource' returned with exit code 253 (Unknown error)
"/usr/bin/akonadi_nepomuktag_resource" crashed too often and will not be restarted!
Comment 3 Daniel Vrátil 2013-11-01 09:55:14 UTC
Git commit 8c9bbc91e450cf883afa1ec511e0dc65b728fb18 by Dan Vrátil.
Committed on 01/11/2013 at 09:43.
Pushed by dvratil into branch 'KDE/4.11'.

Catch exceptions from ProtocolHelper in LinkJobImpl

This does not solve a problem described in bug #326815, but at
least prevents crash by catching the exception and failing the
LinkJob gracefully.

M  +8    -1    akonadi/linkjobimpl_p.h

http://commits.kde.org/kdepimlibs/8c9bbc91e450cf883afa1ec511e0dc65b728fb18
Comment 4 Martin 2013-11-14 13:45:54 UTC
In KDE 4.11.3, this really prevents the crash (A notification of the errror is shown twice at start-up).
Comment 5 Denis Kurz 2016-09-24 20:44:20 UTC
This bug has only been reported for versions older than KDEPIM 4.14 (at most akonadi-1.3). Can anyone tell if this bug still present?

If noone confirms this bug for a recent version of akonadi (part of KDE Applications 15.08 or later), it gets closed in about three months.
Comment 6 Denis Kurz 2017-01-07 22:26:14 UTC
Just as announced in my last comment, I close this bug. If you encounter it again in a recent version (at least 5.0 aka 15.08), please open a new one unless it already exists. Thank you for all your input.