Comment 6 for bug 795492

Revision history for this message
John S. Gruber (jsjgruber) wrote :

I've seen this problem again so I'm resurrecting it.

In my case, Ubuntu One is installed, the userid has never been logged in and therefore there is no Ubuntu One key in the key-chain, even though the gnome-keyring-daemon is running. Logging into Ubuntu One puts such a key (set of tokens) in the keyring and the userid can seem to avoid this error from then on.

desktopcouch-service seems to be waiting on the desktopcouch.application.plugins.ubuntuone_pairing semaphore as when a connection is made that semaphore is removed and things take off.

Before and after the connection looks like this:

DBusException: org.freedesktop.DBus.Error.TimedOut: Activation of org.desktopcouch.CouchDB timed out
migration 2011-09-04 18:41:22,883 - failed to finish migrating.
Traceback (most recent call last):
  File "/usr/lib/pymodules/python2.7/desktopcouch/application/service.py", line 180, in start
    migration.run_needed_migrations(ctx=self._ctx)
  File "/usr/lib/pymodules/python2.7/desktopcouch/application/migration/__init__.py", line 123, in run_needed_migrations
    all_dbs = _all_dbs(ctx)
  File "/usr/lib/pymodules/python2.7/desktopcouch/application/migration/__init__.py", line 102, in _all_dbs
    port = find_port(ctx=ctx)
  File "/usr/lib/pymodules/python2.7/desktopcouch/application/platform/__init__.py", line 48, in find_port
    return platform_find_port(pid, ctx)
  File "/usr/lib/pymodules/python2.7/desktopcouch/application/platform/linux/__init__.py", line 100, in platform_find_port
    proxy = bus.get_object('org.desktopcouch.CouchDB', '/')
  File "/usr/lib/pymodules/python2.7/dbus/bus.py", line 244, in get_object
    follow_name_owner_changes=follow_name_owner_changes)
  File "/usr/lib/pymodules/python2.7/dbus/proxies.py", line 241, in __init__
    self._named_service = conn.activate_name_owner(bus_name)
  File "/usr/lib/pymodules/python2.7/dbus/bus.py", line 183, in activate_name_owner
    self.start_service_by_name(bus_name)
  File "/usr/lib/pymodules/python2.7/dbus/bus.py", line 281, in start_service_by_name
    'su', (bus_name, flags)))
  File "/usr/lib/pymodules/python2.7/dbus/connection.py", line 630, in call_blocking
    message, timeout)
DBusException: org.freedesktop.DBus.Error.TimedOut: Activation of org.desktopcouch.CouchDB timed out
DEBUG:root:Not adding desktopcouch pairing since we are already paired

and then as soon as the connection is made:

INFO:root:removing semaphore for desktopcouch.application.plugins.ubuntuone_pairing
and, if waiting, the create database function will take off.

I got this result with this small code fragment:

rom desktopcouch.application.server import DesktopDatabase; d=DesktopDatabase('george', create=True)