OK I think we can start by always backing up while doing an upgrade from n -> 
I don't know what a gzipped ttl file is so why not just copy the 
activity.sqlite to another back_activity.sqlite?
After upgrade is done we need to check the DB if its properly built. If not we 
try to recover from the backup DB and upgrade again.
I also like the idea of setting the schema to -1 in case of a kill.

zeitgeist fails to run if its database structure is not complete
You received this bug notification because you are a member of Zeitgeist
Framework Team, which is subscribed to Zeitgeist Framework.

Status in Zeitgeist Framework: Triaged
Status in “zeitgeist” package in Ubuntu: Confirmed

Bug description:
Binary package hint: zeitgeist

If zeitgeist's database (~/.local/share/zeitgeist/activity.sqlite) is 
incomplete, eg missing the events table, zeitgeist fails to run. And because 
the GUI does not report that zeitgeist faiiled to run, applications that rely 
on zeitgeist simply fail to work without any relevant reason given.

I ran into this problem on upgrading an installation from Ubuntu 10.04 to 
10.10. After the upgrade, the dockbarx applet failed to run. The error message 
from gnome-panel just said it had failed to run, and .xsession-errors said the 
child process did not report any specific error. Running in debug mode (ie with 
the command "dockbarx-factory.py run-in-window") gave:

ERROR:dbus.proxies:Introspect error on 
:1.134:/org/gnome/zeitgeist/log/activity: dbus.exceptions.DBusException: 
org.freedesktop.DBus.Error.NoReply: Message did not receive a reply (timeout by 
message bus)
DEBUG:dbus.proxies:Executing introspect queue due to error
Traceback (most recent call last):
  File "/usr/bin/dockbarx_factory.py", line 26, in <module>
    import dockbarx.dockbar
  File "/usr/lib/pymodules/python2.6/dbus/proxies.py", line 140, in __call__
  File "/usr/lib/pymodules/python2.6/dbus/connection.py", line 620, in 
    message, timeout)
dbus.exceptions.DBusException: org.freedesktop.DBus.Error.ServiceUnknown: The 
name :1.134 was not provided by any .service files

The error appeared to be a dbus error, but in fact was a problem with 
zeitgeist, which was failing to run because its database apparently was 
corrupted during the upgrade. I fixed the problem (eventually) by deleting the 
zeitgeist database file and restarting the zeitgeist-daemon manually.

What I would expect to happen is:

1) The GUI should report that zeitgeist has failed to run.

2) Better yet, zeitgeist could create the necessary tables if its database is 
invalid or perhaps backup the old database and create a new one so it can run 

It would of course be nice if dockbarx reported better error information, but 
since there are other applications that depend on zeitgeist, it would be good 
if zeitgeist could recover from this situation.

ProblemType: Bug
DistroRelease: Ubuntu 10.10
Package: zeitgeist 0.5.2-0ubuntu1
ProcVersionSignature: Ubuntu 2.6.35-22.34-generic
Uname: Linux 2.6.35-22-generic i686
Architecture: i386
Date: Thu Oct 14 11:52:41 2010
InstallationMedia: Ubuntu 10.10 "Maverick Meerkat" - Alpha i386 (20100602.2)
PackageArchitecture: all
 PATH=(custom, no user)
SourcePackage: zeitgeist

Mailing list: https://launchpad.net/~zeitgeist
Post to     : zeitgeist@lists.launchpad.net
Unsubscribe : https://launchpad.net/~zeitgeist
More help   : https://help.launchpad.net/ListHelp

Reply via email to