Comment 3 for bug 154283

Revision history for this message
Martin Pool (mbp) wrote :

For other people following along, the recipe robert gives will let you play with packs, but it's apparently not enough to let you successfully pull from his baz2.0 repository.

I've written a smaller/faster version of check in https://code.edge.launchpad.net/~bzr/bzr-check-knits/trunk which will let you know if a particular repo is affected by this problem.

Robert suggests that pull should do a check after all the data has been brought in, but before finishing the write group, and this should make sure that all the text dependencies for new knit revisions being added are present.

When this fails, it looks like this:

checking knits of GraphKnitRepository('file:///home/mbp/newbzr/robertc-repository-packs-unrec/.bzr/repository/')
in store GraphKnitTextStore('file:///home/mbp/newbzr/robertc-repository-packs-unrec/.bzr/repository/knits/')
  BAD
  file: join-branches.txt-20050309044946-f635037a889c0388
  verson: <email address hidden>
Knit KnitVersionedFile(file:///home/mbp/newbzr/robertc-repository-packs-unrec/.bzr/repository/text%3Ajoin-branches.txt-20050309044946-f635037a889c0388) corrupt:
version <email address hidden>
    has compression method 'line-delta' but index parents ()

so if this is the case, just checking that the dependencies are there won't be enough.