loggerhead NoSuchRevision: KnitPackRepository exception

Bug #728691 reported by Tom Cato Amundsen
This bug report is a duplicate of:  Bug #726466: bzr log fails on ghost revisions. Edit Remove
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
loggerhead
Triaged
High
Unassigned

Bug Description

Loggerhead 1.18
Downloaded and is running from source dir:
$ ./serve-branches http://solfege.org/bzr/solfege.dev

An unexpected error occurred whileprocessing the request:

Visiting http://127.0.0.1:8080/revision/1 show the following error message.
NoSuchRevision: KnitPackRepository('readonly+http://solfege.org/bzr/.bzr/repository/') has no revision ('Arch-1:<email address hidden>%solfege--unstable--3.1--version-0',)

$ bzr log -r 1 http://solfege.org/bzr/solfege.dev
will show the log message, while "bzr log -r 1 -v http://solfege.org/bzr/solfege.dev will display an exception. See attached bzr.log
http://127.0.0.1:8080/revision/2 shows the expected page with log message and changed files, just as expected.

DEBUG:paste.httpserver.ThreadPool:Added task (0 tasks queued)
INFO:loggerhead.solfege.dev:built revision graph cache: 0.23225116729736328 secs
ERROR:loggerhead.solfege.dev: bzrlib.errors.NoSuchRevision: KnitPackRepository('readonly+file:///home/tom/src/solfege.dev/.bzr/repository/') has no revision ('Arch-1:<email address hidden>%solfege--unstable--3.1--version-0',)
Traceback (most recent call last):
  File "/home/tom/tmp/loggerhead-1.18/loggerhead/apps/error.py", line 31, in __call__
    return self.application(environ, start_response)
  File "/usr/lib/pymodules/python2.6/paste/httpexceptions.py", line 633, in __call__
    return self.application(environ, start_response)
  File "/home/tom/tmp/loggerhead-1.18/loggerhead/main.py", line 124, in wrapped
    return app(environ, start_response)
  File "/home/tom/tmp/loggerhead-1.18/loggerhead/apps/transport.py", line 165, in __call__
    transport, self)(environ, start_response)
  File "/home/tom/tmp/loggerhead-1.18/loggerhead/apps/transport.py", line 128, in __call__
    return self.app_for_branch(b)(environ, start_response)
  File "/home/tom/tmp/loggerhead-1.18/loggerhead/apps/branch.py", line 172, in app
    return c(environ, start_response)
  File "/home/tom/tmp/loggerhead-1.18/loggerhead/controllers/__init__.py", line 93, in __call__
    vals.update(self.get_values(path, kwargs, headers))
  File "/home/tom/tmp/loggerhead-1.18/loggerhead/controllers/revision_ui.py", line 73, in get_values
    file_changes = h.get_file_changes(change)
  File "/home/tom/tmp/loggerhead-1.18/loggerhead/history.py", line 716, in get_file_changes
    return self._file_change_cache.get_file_changes(entry)
  File "/home/tom/tmp/loggerhead-1.18/loggerhead/changecache.py", line 115, in get_file_changes
    changes = self.history.get_file_changes_uncached(entry)
  File "/home/tom/tmp/loggerhead-1.18/loggerhead/history.py", line 710, in get_file_changes_uncached
    return self.file_changes_for_revision_ids(old_revid, entry.revid)
  File "/home/tom/tmp/loggerhead-1.18/loggerhead/history.py", line 751, in file_changes_for_revision_ids
    old_tree, new_tree = repo.revision_trees([old_revid, new_revid])
  File "/usr/lib/python2.6/dist-packages/bzrlib/repository.py", line 2576, in revision_trees
    for inv in inventories:
  File "/usr/lib/python2.6/dist-packages/bzrlib/repository.py", line 2405, in _iter_inventories
    for text, revision_id in inv_xmls:
  File "/usr/lib/python2.6/dist-packages/bzrlib/repository.py", line 2430, in _iter_inventory_xmls
    raise errors.NoSuchRevision(self, record.key)
NoSuchRevision: KnitPackRepository('readonly+file:///home/tom/src/solfege.dev/.bzr/repository/') has no revision ('Arch-1:<email address hidden>%solfege--unstable--3.1--version-0',)
INFO:loggerhead.solfege.dev:Getting information for ErrorUI: 0.0033488273620605469 secs
INFO:loggerhead:127.0.0.1 - - [09/Mar/2011:23:31:47 +0200] "GET /revision/1 HTTP/1.1" 200 - "http://127.0.0.1:8080/changes/10?start_revid=30" "Mozilla/5.0 (X11; Linux x86_64; rv:2.0b13pre) Gecko/20110303 Firefox/4.0b13pre"
INFO:loggerhead.solfege.dev:Rendering ErrorUI: 0.04170680046081543 secs, 2523 bytes

Revision history for this message
Tom Cato Amundsen (tca) wrote :
Revision history for this message
Tom Cato Amundsen (tca) wrote :
  • t.t Edit (3.7 KiB, application/x-troff)

Attached is the output of serve-branches

Revision history for this message
Robert Collins (lifeless) wrote :

Sounds like a bzr bug - that its appropriate for loggerhead to fail in this situation, because bzr itself does too.

affects: loggerhead → bzr
Revision history for this message
Jelmer Vernooij (jelmer) wrote :

There's already a separate issue about the log issue (bug 726466).

Tom, can you please paste the traceback for the *loggerhead* crash? The bzr log crash isn't all that interesting here.

Revision history for this message
Jelmer Vernooij (jelmer) wrote :

Moving this back to loggerhead for the moment - if it turns out to be purely a bzr issue we can mark it as a dupe of bug 726466.

affects: bzr → loggerhead
Changed in loggerhead:
status: New → Incomplete
Revision history for this message
Tom Cato Amundsen (tca) wrote :

loggerhead crash attached

description: updated
Changed in loggerhead:
status: Incomplete → Confirmed
status: Confirmed → Triaged
importance: Undecided → High
Revision history for this message
Jelmer Vernooij (jelmer) wrote :

As a side-note,the get_file_changes_uncached() method should be able to use Repository.get_revision_delta() rather than retrieving the revision trees and manually delta-ing.

Revision history for this message
Robert Collins (lifeless) wrote :

Looks to be purely a bzr issue.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.