dirstate internals question
John Arbash Meinel
john at arbash-meinel.com
Thu Aug 14 21:53:56 BST 2008
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Robert Collins wrote:
> I'm confused by this code in dirstate's update_basis_apply_deletes
>
> if real_delete:
> if entry[1][0][0] != 'a':
> self._changes_aborted = True
> raise errors.InconsistentDelta(old_path, file_id,
> 'This was marked as a real delete, but the
> WT state'
> ' claims that it still exists and is
> versioned.')
> del self._dirblocks[block_index][1][entry_index]
>
>
> I'm trying to figure out whether
> http://launchpadlibrarian.net/16676735/bzr-log-extract.txt
> shows a bug in:
> - dirstate's delta generation
> - commits inventory delta synthesis logic
> - dirstates update_basis_from_delta logic
>
> -Rob
>
I think we had a specific bug when we were having a rename of a deleted
file. I believe the important error checking was in the 'else' of this
if, and this just got added because it made sense to do both at the same
time.
Looking at the log, I see:
'bzr rm test' before the 'bzr commit', but then we are getting
"test/functional" as still existing.
Which certainly seems like the 'unversion' request didn't properly chain
down to unversioning all children of 'test/'.
John
=:->
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (Cygwin)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
iEYEARECAAYFAkikm2QACgkQJdeBCYSNAAMUBwCcDNFtcvWs72cuKXQQTM8uLcEO
uZgAnRAMi6fxYDJZP2RHdfy0aja/spLa
=/dyo
-----END PGP SIGNATURE-----
More information about the bazaar
mailing list