Crash (and corruption?) after reverting an added directory

John Arbash Meinel john at arbash-meinel.com
Mon Apr 27 15:54:55 BST 2009


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1


...
> # argh: just rm'ing the files did not remove them from bzr's radar, of
> course. duh.
> # rewind again.
> bzr revert .
> 
> This last "revert" seems to be where everything goes off the rails.
> Specifically, the output from that command is
> 
> -D  pkg/
> -   pkg/a.py
> -   pkg/b.py
> -   pkg/sub
> bzr: ERROR: An inconsistent delta was supplied involving 'pkg/sub',
> 'sub-20090426182712-gp9wgeideu9o5x1f-4'
> reason: The file id was deleted but its children were not deleted.
> 
> That's a pretty inscrutable error message to a newbie like me.  But it
> gets worse:

^- it is inscrutable because it is an internal error. (aka, something
you should never see...)

Specifically, it looks like somehow we decided to remove 'pkg/sub' but
failed to remove 'pkg/sub/c.py'

Now possibly the problem is just one of ordering. That we get to pkg/sub
*before* we get to pkg/sub/c.py

However, I was pretty sure that 'apply_delta' was order agnostic, and we
only checked the correctness after applying the entire delta. (I could
be wrong.)

...
> 
> Now this branch is hosed: most commands fail with the above stack
> trace.  "bzr check" blows up with
> 
> Checking working tree at 'file:///tmp/bzr-fastimport/'.
> bzr: ERROR: exceptions.AssertionError: no parent entry for:
> fastimport/__init__.py in tree 0

^- I assume this is on the 'real' occurrence, and not the test one you
mentioned before :).

Anyway, this is probably the same delta issue as above. Somehow we
managed to remove 'fastimport/' the directory, without removing
'__init__.py' from being tracked.

John
=:->
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (Cygwin)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iEYEARECAAYFAkn1xz8ACgkQJdeBCYSNAAMmoACfbK5DVk0gED7EEnZsG/MPDijz
OFwAnRwL6hGZFMDYhSPelOMq5YI5hAUe
=08di
-----END PGP SIGNATURE-----



More information about the bazaar mailing list