← Back to team overview

zeitgeist team mailing list archive

[Bug 598666] Re: Invalid cache access (was: Error when trying to fetch items)

 

I'm re-opening this since I've finally found the cause of this problem!

When events are deleted, interpretations/manifestations/mimetypes/etc.
which are no longer used are automatically removed from the database.
However, the cache isn't informed about this and until Zeitgeist is
restarted it'll continue using the IDs of the deleted rows for new
events.

(I'm setting the importance down since a workaround for the problem is
already deployed).

** Changed in: zeitgeist
   Importance: High => Medium

** Changed in: zeitgeist
       Status: Fix Released => Triaged

-- 
You received this bug notification because you are a member of Zeitgeist
Framework Team, which is subscribed to Zeitgeist Framework.
https://bugs.launchpad.net/bugs/598666

Title:
  Invalid cache access (was: Error when trying to fetch items)

Status in Zeitgeist Framework:
  Triaged

Bug description:
  When i try to fetch all items in one query i get

  
  Error from Zeitgeist engine: org.freedesktop.DBus.Python.KeyError: Traceback (most recent call last):
    File "/usr/lib/pymodules/python2.6/dbus/service.py", line 702, in _message_cb
      retval = candidate_method(self, *args, **keywords)
    File "/usr/local/share/zeitgeist/_zeitgeist/engine/remote.py", line 254, in FindEvents
      event_templates, storage_state, num_events, result_type, sender))
    File "/usr/local/share/zeitgeist/_zeitgeist/engine/main.py", line 378, in find_events
      return self._find_events(1, *args)
    File "/usr/local/share/zeitgeist/_zeitgeist/engine/main.py", line 366, in _find_events
      return self.get_events(rows=result, sender=sender)
    File "/usr/local/share/zeitgeist/_zeitgeist/engine/main.py", line 188, in get_events
      events[event.id].append_subject(self._get_subject_from_row(row))
    File "/usr/local/share/zeitgeist/_zeitgeist/engine/main.py", line 160, in _get_subject_from_row
      getattr(self, "_" + field).value(row["subj_" + field]))
    File "/usr/local/share/zeitgeist/_zeitgeist/engine/sql.py", line 422, in value
      return self._inv_dict[id]
  KeyError: 138

  This looks serious



References