Comment 11 for bug 653307

Revision history for this message
Andrew Bennetts (spiv) wrote :

Well, the issue appears to be essentially that there are *two* different creations of the same revision (or at least, of the same inventory). It's conceivable that something like a format upgrade or cross-format fetch is to blame — a format change necessarily has to generate a new serialisation of an inventory from an existing one. Although in this case I'd be surprised if that had happened, because the changes to contents appear to be pretty significant: not just different metadata but different file contents!

However AFAIK in all our repository formats once a record for a given key has been written then it's basically set in stone: even if a later write to the repository attempts to add different contents for an existing key it won't overwrite that (either the apparent duplicate will be silently ignored, or if the discrepancy is noticed bzr may give an error). So yes, I think it's extremely unlikely to have occurred other than when revisions are created. For comparison there's a current bzr-svn bug can trigger the same sort of error after ghosts have been filled in the SVN repo — so at two different times the SVN source generated slightly different inventories with the same name.

More data points from debian sid/squeeze/lenny import branches:

 * apr-utils: <email address hidden>
 * qcontrol: <email address hidden>
 * hevea: <email address hidden>
 * docbook-xsl: <email address hidden>

So far exactly one disagreeing inventory in each case (even though the number of common revisions between the repos varies from just 1 to most).