Comment # 6 on bug 75672 from
(In reply to comment #4)
> > You can verify that with:
> > 
> > gdb -p `pidof syncevo-dbus-server` # while syncevo-dbus-server is still
> > running
> > b SyncEvo::AkonadiSyncSource::start
> > catch throw
> > cont
> > 
> > This should break in SyncEvo::AkonadiSyncSource::start. Enter "finish".
> > Instead of returning from the call, it show break on the exception that you
> > see ("Akonadi is not running. It can be started with 'akonadictl start'.").
> > 
> > Could it be that Akonadi was not running yet when syncevo-dbus-server was
> > started? Perhaps Akonadi::ServerManager::isRunning() only checks once and
> > then does not notice when Akonadi gets started later on. Just an idea.
> 
> No, it was running. I checked several times.

As I speculated in my later comment, it's not syncevo-dbus-server which checks
for Akonadi during the sync, and therefore the exception in it is related to
something else (probably shutting down the sync).

> > Can you run the check with gdb above and give more information about your
> > Linux distro? Which version of SyncEvolution?
> 
> I use Exherbo as my linux distribution. I have KDE 4.12.2 and Akonadi
> (server) 1.11.0. The dbus version is 1.8.0. The problem occurs with
> SyncEvolution 1.4.

How was SyncEvolution compiled? gdb doesn't seem to find debug information for
/usr/lib64/../lib64/libsyncevolution.so.0, which would be useful for further
analysis of the problem.

Was KDE support enabled while building SyncEvolution? Perhaps Akonadi depends
on a KApplication instance, which is what KDEInitMainSlot in the kdeplatform.so
creates.

Does Akonadi access work for you at all or is it only failing during syncing
via HTTP?

The simplest possible test is:

SYNCEVOLUTION_DEBUG=1 syncevolution --daemon=no --print-databases
backend=kde-contacts

This does not fork any processes, so gdb can be run on it more easily:

SYNCEVOLUTION_DEBUG=1 gdb --args syncevolution --daemon=no --print-databases
backend=kde-contacts

When I run dbus-monitor in parallel, I see that it looks for some well-known
Akonadi names. Below is the failure when Akonadi is not running. Note that the
log starts with claiming and releasing a name for the SyncEvolution instance;
that's part of the KApplication startup, followed by freeing the name again in
KDEInitMainSlot. dbus-monitor doesn't seem to dump the response to the
NameHasOwner method call, neither when it succeeds nor when it fails.

What does you log look like?

signal sender=org.freedesktop.DBus -> dest=(null destination) serial=29
path=/org/freedesktop/DBus; interface=org.freedesktop.DBus;
member=NameOwnerChanged
   string ":1.23"
   string ""
   string ":1.23"
method call sender=:1.23 -> dest=org.freedesktop.DBus serial=1
path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=Hello
signal sender=org.freedesktop.DBus -> dest=(null destination) serial=30
path=/org/freedesktop/DBus; interface=org.freedesktop.DBus;
member=NameOwnerChanged
   string ":1.24"
   string ""
   string ":1.24"
method call sender=:1.24 -> dest=org.freedesktop.DBus serial=1
path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=Hello
signal sender=org.freedesktop.DBus -> dest=(null destination) serial=31
path=/org/freedesktop/DBus; interface=org.freedesktop.DBus;
member=NameOwnerChanged
   string "org.syncevolution.syncevolution-7239"
   string ""
   string ":1.24"
method call sender=:1.24 -> dest=org.freedesktop.DBus serial=2
path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=RequestName
   string "org.syncevolution.syncevolution-7239"
   uint32 4
signal sender=org.freedesktop.DBus -> dest=(null destination) serial=32
path=/org/freedesktop/DBus; interface=org.freedesktop.DBus;
member=NameOwnerChanged
   string "org.syncevolution.syncevolution-7239"
   string ":1.24"
   string ""
method call sender=:1.24 -> dest=org.freedesktop.DBus serial=3
path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=ReleaseName
   string "org.syncevolution.syncevolution-7239"
method call sender=:1.24 -> dest=org.freedesktop.DBus serial=4
path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=NameHasOwner
   string "org.freedesktop.Akonadi.Control"
method call sender=:1.24 -> dest=org.freedesktop.DBus serial=5
path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=NameHasOwner
   string "org.freedesktop.Akonadi"
method call sender=:1.24 -> dest=org.freedesktop.DBus serial=6
path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=NameHasOwner
   string "org.freedesktop.Akonadi.Control.lock"
[ERROR 00:00:00] Akonadi is not running. It can be started with 'akonadictl
start'.
signal sender=org.freedesktop.DBus -> dest=(null destination) serial=33
path=/org/freedesktop/DBus; interface=org.freedesktop.DBus;
member=NameOwnerChanged
   string ":1.24"
   string ":1.24"
   string ""
signal sender=org.freedesktop.DBus -> dest=(null destination) serial=34
path=/org/freedesktop/DBus; interface=org.freedesktop.DBus;
member=NameOwnerChanged
   string ":1.23"
   string ":1.23"
   string ""


You are receiving this mail because: