Gareth White wrote:
> It removes them from version control but leaves them in the working
> tree. It's as if you did "bzr remove --keep <some random dir>". (Or, as
> if bzr thought a directory was missing on disk when it wasn't and
> therefore it decided to remove it during the commit.)
>
> It can be reproduced by doing a commit that doesn't (shouldn't) change
> anything, as in the original description.
>
> I've also managed to reproduce it on my OS X machine now as well. The two important factors are that:
> 1. The branch has a lot of files and directories in it (e.g. 10000 files, 1000 dirs). I reproduced it by putting 10 copies of the bzr source into the same branch.
> 2. You need to interrupt it at the correct time. This is sometime after it says "Committing to:", but *before* it displays the progress bar.
>If you try this a few times you'll see the message about
"KeyboardInterrupt in 'bzrlib._dirstate_helpers_pyx".
>Repeat a few more times and eventually you'll see it remove a directory
of files.
^- This specifically sounds like we are suppressing the exception
somewhere, and we shouldn't be. And so we end up not processing a
directory because of the exception, but the calling code isn't
propagating the exception and so it keeps going even though we've
omitted a dir.
Do you have any more context for this?
John
=:->
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (Cygwin)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Gareth White wrote: _dirstate_ helpers_ pyx".
> It removes them from version control but leaves them in the working
> tree. It's as if you did "bzr remove --keep <some random dir>". (Or, as
> if bzr thought a directory was missing on disk when it wasn't and
> therefore it decided to remove it during the commit.)
>
> It can be reproduced by doing a commit that doesn't (shouldn't) change
> anything, as in the original description.
>
> I've also managed to reproduce it on my OS X machine now as well. The two important factors are that:
> 1. The branch has a lot of files and directories in it (e.g. 10000 files, 1000 dirs). I reproduced it by putting 10 copies of the bzr source into the same branch.
> 2. You need to interrupt it at the correct time. This is sometime after it says "Committing to:", but *before* it displays the progress bar.
>If you try this a few times you'll see the message about
"KeyboardInterrupt in 'bzrlib.
>Repeat a few more times and eventually you'll see it remove a directory
of files.
^- This specifically sounds like we are suppressing the exception
somewhere, and we shouldn't be. And so we end up not processing a
directory because of the exception, but the calling code isn't
propagating the exception and so it keeps going even though we've
omitted a dir.
Do you have any more context for this?
John enigmail. mozdev. org/
=:->
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (Cygwin)
Comment: Using GnuPG with Mozilla - http://
iEYEARECAAYFAks w7IEACgkQJdeBCY SNAANxMQCg1IxbE HCx4P0k5siWM8Fm YQrk zP7SeFHrGtP5/ Ad4E4NmdU
Dx8An3Tep/
=L4vH
-----END PGP SIGNATURE-----