Comment 25 for bug 653307

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

bzr has now been upgraded on that system. Unfortunately the problem for at least dsdo turns out to be deeper: the inventory SHAs disagree not because of non-canonical inventories, but because they actually have different contents. Here's a diff of the long testaments for <email address hidden> in sid vs. squeeze:

--- dsdo.sid.testament 2011-02-04 12:34:43.044796998 +1100
+++ dsdo.squeeze.testament 2011-02-04 12:34:51.060796998 +1100
@@ -35,21 +35,21 @@
   directory debian/cdbs cdbs-20090616021458-osacbonnnq87rgjn-25
   directory debian/cdbs/1 1-20090616021458-osacbonnnq87rgjn-26
   directory debian/cdbs/1/class class-20090616021458-osacbonnnq87rgjn-27
- file debian/cdbs/1/class/dict.mk dict.mk-20090616021458-osacbonnnq87rgjn-28 afd1d248a964e760d449d04f878546188d0996fb
+ file debian/cdbs/1/class/dict.mk dict.mk-20090616021458-osacbonnnq87rgjn-28 5f2ce2df751a29da14a947496586a9a14b0ffb09
   directory debian/cdbs/1/rules rules-20090616021458-osacbonnnq87rgjn-29
   file debian/cdbs/1/rules/buildinfo.mk buildinfo.mk-20090616021458-osacbonnnq87rgjn-31 e0d23276a1a31e076d26a1cc7536668ae211a4d2
   file debian/cdbs/1/rules/copyright-check.mk copyrightcheck.mk-20090616021458-osacbonnnq87rgjn-53 18bb4b6ab155e58a9841224eca04a10e05b8ef76
   file debian/cdbs/1/rules/package-relations.mk packagerelations.mk-20090616021458-osacbonnnq87rgjn-86 228575c081f448eaadf403cc42182c310cf30d0f
   file debian/cdbs/1/rules/upstream-tarball.mk upstreamtarball.mk-20090616021458-osacbonnnq87rgjn-64 4e02fba31a1abbdaf4480d8eb5d500b5bd14cedf
- file debian/changelog changelog-20090616021458-osacbonnnq87rgjn-39 126be1eea1780e5ef44f0b92ca9e679c87cc198d
+ file debian/changelog changelog-20090616021458-osacbonnnq87rgjn-39 02bdc6b9562576ec97cce215984591df8c61067a
   file debian/compat compat-20090616021458-osacbonnnq87rgjn-42 ccf271b7830882da1791852baeca1737fcbe4b90
- file debian/control control-20090616021458-osacbonnnq87rgjn-34 26d6c96ebd8883b8d0d74cc4d1c4944adec21b18
+ file debian/control control-20090616021458-osacbonnnq87rgjn-34 677f89f9321be77ad43ebbb35385ef06c02c7dea
   file debian/control.in control.in-20090616021458-osacbonnnq87rgjn-37 051c9140259db174e6aa0bc2b9ab0520c6b8a32c
   file debian/copyright copyright-20090616021458-osacbonnnq87rgjn-40 68a10afb19ae03a3e018d21dd056a32053772c62
   file debian/copyright_hints copyright_hints-20090616021458-osacbonnnq87rgjn-54 751df3c96824a6cfe7fef0390ea29d4fccc54d0d
   file debian/idanish.info-ispell idanish.infoispell-20090616021458-osacbonnnq87rgjn-36 8802d6a3ffcd933c26d13905727c838551efd07d
   file debian/myspell-da.info-myspell myspellda.infomyspel-20090616021458-osacbonnnq87rgjn-43 693b404a3f13e9cbb4a38b76e6d2326523ff9384
- file debian/myspell-da.links myspellda.links-20090616021458-osacbonnnq87rgjn-73 1b677c610bc1c8083acf0b373a9f44aea1180014
+ file debian/myspell-da.links myspellda.links-20090616021458-osacbonnnq87rgjn-73 763d68a0ee4761407284b498ece6880c7d492cf3
   directory debian/patches patches-20090616021458-osacbonnnq87rgjn-32
   file debian/patches/1001_enable_aspell_rules.patch 1001_enable_aspell_r-20090616021458-osacbonnnq87rgjn-67 6bbef08f28677116b8e170603f68a9e8c1145b14
   file debian/patches/1002_enable_ispell_rules.patch 1002_enable_ispell_r-20090616021458-osacbonnnq87rgjn-69 0a62c4298e904eec197d786478cce50670b43b99

And sure enough files like debian/myspell-da.links really do have different inventory entries:

InventoryFile('myspellda.links-20090616021458-osacbonnnq87rgjn-73', u'myspell-da.links', parent_id='debian-20090616021458-osacbonnnq87rgjn-24', sha1='1b677c610bc1c8083acf0b373a9f44aea1180014', len=352, <email address hidden>)

vs.

InventoryFile('myspellda.links-20090616021458-osacbonnnq87rgjn-73', u'myspell-da.links', parent_id='debian-20090616021458-osacbonnnq87rgjn-24', sha1='763d68a0ee4761407284b498ece6880c7d492cf3', len=130, <email address hidden>)

I don't know why these two branches have differing inventory contents, but the result is of course that things break: because sid is branched on squeezy the different CHK and text records it expects for that inventory-id are missing, and so the sid branch is badly broken.

We need to figure out how it is these conflicting inventories were generated in the first place.

One more strange detail: james_w ran a script to delete all the branches of these affected imports, and yet http://bazaar.launchpad.net/~ubuntu-branches/debian/squeeze/dsdo/squeeze/.bzr/repository/packs/ and http://bazaar.launchpad.net/~ubuntu-branches/debian/sid/dsdo/sid/.bzr/repository/packs/ show timestamps almost 12 months old for the pack files! I guess the deletion failed?