<html><head></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><span class="Apple-style-span" style="font-family: monospace; ">Hi John<br><br>Thanks for these. I found the .pack and .*ix files in obsolete_packs. copied them back to packs and indices respectively and did bzr check, bzr reconcile, all worked fine AFAIK.<br><br>I took a copy of the repository before starting everything I did, is there anything I can do to help figure out what was going on? obviously, I didn't move the pack and index files there, so bazaar must have done something wrong, no?<br><br>- Scott</span><div><font class="Apple-style-span" face="monospace"><br></font><div><div>On 19 Apr 2010, at 16:43, John Arbash Meinel wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><div>-----BEGIN PGP SIGNED MESSAGE-----<br>Hash: SHA1<br><br>Scott Aubrey wrote:<br><blockquote type="cite">HI Guys<br></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite">I've just come across this problem and I'm crapping myself a little in<br></blockquote><blockquote type="cite">anticipation of this being unfixable, but just today I've started<br></blockquote><blockquote type="cite">getting a missing index file error on ANY commands I run on a remote<br></blockquote><blockquote type="cite">repository.<br></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite">examples (these are running on the remote machine):<br></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite"><blockquote type="cite">bzr branch /repo/grace ~/test<br></blockquote></blockquote><br>So I can certainly give you some stuff you can run to prune the missing<br>pack file out of the repo so that it doesn't try to access it. But I'd<br>first really recommend trying to do some analysis to figure out how it<br>could have gone missing.<br><br>Search around to see if you can find any files that look similar,<br>something like:<br><br> find /repo -name '019ea2*'<br><br>Also, it probably be informative to do something like:<br><br> bzr dump-btree --raw .bzr/repository/pack-names<br><br><br>You will want to compare the hashes in that file to the contents of<br>.bzr/repository/packs and .bzr/repository/indices<br><br>There should be a *.pack for every hash in packs/, and a *.[ricts]ix (5<br>indexes) in indices/<br><br>Also, you should be able to run 'md5sum -c packs/*' and the names of<br>each pack file should match the computed hash value.<br><br><br>In the end, if we can't get it sorted out, then you'll do something like<br>this in a python script (or from the interpreter):<br><br><br>from bzrlib import repository, btree_index, transport<br><br>t = transport.get_transport('/repo/.bzr/repository')<br>pn_index = btree_index.BTreeGraphIndex(t, 'pack-names', None)<br>nodes = pn_index.iter_all_entries()<br><br>new_index = btree_index.BTreeBuilder(0, 1)<br><br>for _, key, value in nodes:<br> if key == ('019ea24b5664a247498a7510ba0548c2',):<br> continue<br> new_index.add_node(key, value)<br><br>new_index_content = new_index.finish()<br>t.put_file('pack-names', new_index_content)<br><br>John<br>=:-><br>-----BEGIN PGP SIGNATURE-----<br>Version: GnuPG v1.4.9 (Cygwin)<br>Comment: Using GnuPG with Mozilla - <a href="http://enigmail.mozdev.org/">http://enigmail.mozdev.org/</a><br><br>iEYEARECAAYFAkvMeggACgkQJdeBCYSNAAOreACePKA0XnPwcaAjXvLCEP2sFCOJ<br>0dwAn3LVRQLyq5Aqlub/RKJIxou3x45M<br>=xLo0<br>-----END PGP SIGNATURE-----<br></div></blockquote></div><br></div></body></html>