On Tue, 2011-04-05 at 20:42 +0000, Eli Zaretskii wrote:
> The good news are, the original bug is probably gone. The bad news...
> well, see for yourself:
>
> I needed to install the latest trunk of dulwich, because the new bzr-git
> won't work with dulwich 0.7.0, which is the latest released version.
> After that, it worked all the way, but crashed at the end with this
> traceback:
>
> 12036.188 Traceback (most recent call last):
> File "bzrlib\commands.pyo", line 926, in exception_to_return_code
> File "bzrlib\commands.pyo", line 1126, in run_bzr
> File "bzrlib\commands.pyo", line 691, in run_argv_aliases
> File "bzrlib\commands.pyo", line 713, in run
> File "bzrlib\cleanup.pyo", line 135, in run_simple
> File "bzrlib\cleanup.pyo", line 165, in _do_with_cleanups
> File "bzrlib\builtins.pyo", line 1230, in run
> File "bzrlib\transport\__init__.pyo", line 1173, in delete_tree
> File "bzrlib\transport\__init__.pyo", line 1154, in delete_multi
> File "bzrlib\transport\__init__.pyo", line 450, in _iterate_over
> File "bzrlib\transport\local.pyo", line 434, in delete
> File "bzrlib\transport\__init__.pyo", line 316, in _translate_error
> PermissionDenied: Permission denied: "D:/gnu/bzr/gnulib.test/./.bzr/repository/git/idmap.db": [Error 32] The process cannot access the file because it is being used by another process: u'D:/gnu/bzr/gnulib.test/./.bzr/repository/git/idmap.db'
>
> I can assure you that no other bzr was running in that repository at the
> time. So it's probably bzr-git stepping on its own toes.
>
> Let me know if I can help you investigate that.
This happens because bzr encountered an error during the fetch and then
tried to remove the branch so it wouldn't leave any broken data around.
That delete happened while there was a file still open (which works fine
on POSIX but breaks on Windows, which doesn't allow removing open
files).
Can you try again with the delete_tree stuff skipped? This should be a
matter of adding "raise" on a new line 1230 of bzrlib/builtins.py,
before the delete_tree call.
On Tue, 2011-04-05 at 20:42 +0000, Eli Zaretskii wrote: commands. pyo", line 926, in exception_ to_return_ code commands. pyo", line 1126, in run_bzr commands. pyo", line 691, in run_argv_aliases commands. pyo", line 713, in run cleanup. pyo", line 135, in run_simple cleanup. pyo", line 165, in _do_with_cleanups builtins. pyo", line 1230, in run transport\ __init_ _.pyo", line 1173, in delete_tree transport\ __init_ _.pyo", line 1154, in delete_multi transport\ __init_ _.pyo", line 450, in _iterate_over transport\ local.pyo" , line 434, in delete transport\ __init_ _.pyo", line 316, in _translate_error bzr/gnulib. test/./ .bzr/repository /git/idmap. db": [Error 32] The process cannot access the file because it is being used by another process: u'D:/gnu/ bzr/gnulib. test/./ .bzr/repository /git/idmap. db'
> The good news are, the original bug is probably gone. The bad news...
> well, see for yourself:
>
> I needed to install the latest trunk of dulwich, because the new bzr-git
> won't work with dulwich 0.7.0, which is the latest released version.
> After that, it worked all the way, but crashed at the end with this
> traceback:
>
> 12036.188 Traceback (most recent call last):
> File "bzrlib\
> File "bzrlib\
> File "bzrlib\
> File "bzrlib\
> File "bzrlib\
> File "bzrlib\
> File "bzrlib\
> File "bzrlib\
> File "bzrlib\
> File "bzrlib\
> File "bzrlib\
> File "bzrlib\
> PermissionDenied: Permission denied: "D:/gnu/
>
> I can assure you that no other bzr was running in that repository at the
> time. So it's probably bzr-git stepping on its own toes.
>
> Let me know if I can help you investigate that.
This happens because bzr encountered an error during the fetch and then
tried to remove the branch so it wouldn't leave any broken data around.
That delete happened while there was a file still open (which works fine
on POSIX but breaks on Windows, which doesn't allow removing open
files).
Can you try again with the delete_tree stuff skipped? This should be a
matter of adding "raise" on a new line 1230 of bzrlib/builtins.py,
before the delete_tree call.
Cheers,
Jelmer