[Nepomuk] Re: Stuck nepomuk email feeder, unknown soprano command 212
Sebastian Trüg
trueg at kde.org
Wed Dec 8 09:11:53 CET 2010
On 12/07/2010 05:10 PM, Will Stephenson wrote:
> I frequently see the following behaviour from nepomuk_email_feeder.
>
> *)Trunk from today, soprano 2.5.63, virtuoso 6.1.2
>
> *) High CPU usage
>
> *) console output, repeated forever
> local socket error: QLocalSocket::PeerClosedError
> "/space/kde/installs/trunk/bin/akonadi_nepomuk_email_feeder(5719)" Soprano:
> "Command timed out."
> "/space/kde/installs/trunk/bin/akonadi_nepomuk_email_feeder(5719)" Soprano:
> "Invalid model id"
> "/space/kde/installs/trunk/bin/akonadi_nepomuk_email_feeder(5719)" Soprano:
> "Invalid iterator."
Hm here we should try to find out what kind of commands get the timeout.
> * console output from nepomuk, repeated forever
> [/space/kde/installs/trunk/bin/nepomukservicestub] Unknown command: 212
> closing connection
> [/space/kde/installs/trunk/bin/nepomukservicestub] virtual void
> Soprano::Server::LocalServer::incomingConnection(quintptr)
> [/space/kde/installs/trunk/bin/nepomukservicestub] void
> Soprano::Server::ServerCorePrivate::addConnection(Soprano::Server::ServerConnection*)
> New connection. New count: 14
> [/space/kde/installs/trunk/bin/nepomukservicestub] virtual void
> Soprano::Server::ServerConnection::run() thread done.
> [/space/kde/installs/trunk/bin/nepomukservicestub] void
> Soprano::Server::ServerCore::serverConnectionFinished()
> [/space/kde/installs/trunk/bin/nepomukservicestub] virtual
> Soprano::Server::ServerConnection::~ServerConnection() Removing connection
> [/space/kde/installs/trunk/bin/nepomukservicestub] void
> Soprano::Server::ServerCore::serverConnectionFinished() Connection removed.
> Current count: 13
>
> It seems that Soprano hangs up the connection after receiving the unknown 212
> and then the feeder continues to try the same command.
>
> Is this a bug (which I will report) or a local/packaging error? Does soprano
> even use numeric command codes?
Soprano does indeed use numeric command codes but they end at 0x22 (34)
(I just realized how pointless my use of 0x is).
I suspect that the wrong code comes from the timeout which leaves one
communication end in an invalid state. As such, this is a Soprano bug
which does not recover from a timeout properly.
Since I am not sure on how to fix that the better approach would be to
find the problematic command which times out.
Cheers,
Sebastian
More information about the Nepomuk
mailing list