multi-pull and repo-push commands failed with pack repo

Alexander Belchenko bialix at ukr.net
Wed Dec 5 10:43:51 GMT 2007


Alexander Belchenko пишет:
> In both cases symptoms are the same:
> 
> E:\Bazaar\bzr-doc-russian>bzr multi-pull
> Pulling trunk from file:///C:/work/Bazaar/bzr-doc-russian/trunk/
> Pulling apm from file:///C:/work/Bazaar/bzr-doc-russian/apm/
> File exists: u'E:/Bazaar/bzr-doc-russian/.bzr/repository/upload/o3vp50gl37wwoc1anau7.autopack':
> [Error 183] ═хтючьюц
> эю ёючфрЄ№ Їрщы,

It seems that for some reason both plugins sometimes want to transfer
the pack with name that already exists in destination repository.

Here excerpt from .bzr.log for repo-push (push actually should be no-op,
because both repos was mirrored successfully):

bzr arguments: [u'repo-push', u'G:\\Bazaar\\bzr-doc-russian\\']
encoding stdout as sys.stdout encoding 'cp1251'
[ 1308] Wed 12:29:09.948 INFO: Pushing 4 branches from
file:///C:/work/Bazaar/bzr-doc-russian/ to
file:///G:/Bazaar/bzr-doc-russian/
Using fetch logic to copy between
KnitPackRepository(u'file:///C:/work/Bazaar/bzr-doc-russian/.bzr/repository/')(<RepositoryFormatKnitPack1>) 

and
KnitPackRepository(u'file:///G:/Bazaar/bzr-doc-russian/.bzr/repository/')(<RepositoryFormatKnitPack1>)
Traceback (most recent call last):
   File "bzrlib\commands.pyc", line 802, in run_bzr_catch_errors
   File "bzrlib\commands.pyc", line 758, in run_bzr
   File "bzrlib\commands.pyc", line 492, in run_argv_aliases
   File "C:\work\Bazaar\plugins-repo\repo_push\__init__.py", line 46, in run
   File "C:\work\Bazaar\plugins-repo\repo_push\repopush.py", line 97, in
repo_push
   File "bzrlib\repository.pyc", line 873, in fetch
   File "bzrlib\decorators.pyc", line 165, in write_locked
   File "bzrlib\repository.pyc", line 2555, in fetch
   File "bzrlib\repofmt\pack_repo.pyc", line 559, in pack
   File "bzrlib\repofmt\pack_repo.pyc", line 685, in _create_pack_from_packs
   File "bzrlib\repofmt\pack_repo.pyc", line 367, in finish
   File "bzrlib\transport\local.pyc", line 386, in rename
   File "bzrlib\transport\__init__.pyc", line 351, in _translate_error
FileExists: File exists:
u'G:/Bazaar/bzr-doc-russian/.bzr/repository/upload/gmf6s7aw7gjjk12m45qe.fetch': 

[Error 183] Невозможно создать файл,

return code 3

The same plugin for knits repo wotks fine.

And because you never get error during rename-over-top on Linux, IMO 
there is hidden bug in pack transfer code. Either win32 specific, or 
not. Any suggestions what it could be, and what the right way to fix it?





More information about the bazaar mailing list