Oddly enough adding this line before doing the reconcile step:
repo = repo.bzrdir.open_repository()
*Does* reproduce the existing failures. (For 1.9 format repos, it fails because it tries to create a pack file which is identical to an existing one [a safe and semi-expected failure], for 2a repos it fails with the file_id_parent_map[key] KeyError.)
I'm pretty surprised that re-opening the repository has such a dramatic effect. Probably something else that we need to look into.
Oddly enough adding this line before doing the reconcile step: open_repository ()
repo = repo.bzrdir.
*Does* reproduce the existing failures. (For 1.9 format repos, it fails because it tries to create a pack file which is identical to an existing one [a safe and semi-expected failure], for 2a repos it fails with the file_id_ parent_ map[key] KeyError.)
I'm pretty surprised that re-opening the repository has such a dramatic effect. Probably something else that we need to look into.