ReadOnlyError from pull/update of checkout using smart server in 2.3.x
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Bazaar |
Confirmed
|
Medium
|
Unassigned |
Bug Description
I upgraded my server and client to the very latest bzr 2.3.0. Now when I
try to pull or update my branch on my client using the smart server I
get the following error:
Using saved parent location: bzr://server/
bzr: ERROR: Received bad protocol version marker: 'Unable to obtain
lock held by devel\nat devel [process #1422], acquired 5 seconds
ago.\nSee "bzr help break-lock" for more.\n'
It seems that Bazaar is locking itself out! Each time I run it the lock
is a different one and there are no locks on the server or client and I
am the only one using the server and client. It's always held a few
seconds ago so it's clearly the smart server process that is spawned by
Bazaar that blocks itself. I did not have this problem before upgrading.
Changed in bzr: | |
status: | New → Confirmed |
importance: | Undecided → Medium |
tags: | added: check-for-breezy |
Here is a stack trace I found in ~/.bzr.log:
Sat 2011-02-19 11:08:02 +0100 .bazaar/ plugins pymodules/ python2. 6/bzrlib/ plugins python2. 6/dist- packages/ bzrlib/ plugins y(bzr:/ /devel/ devel/bitwig/ .bzr/)( RemoteRepositor yFormat( _network_ name='Bazaar repository format 2a (needs bzr 1.16 or later)\n')) and CHKInventoryRep ository( 'file:/ //home/ nick/projects/ bitwig/ .bzr/repository /')(RepositoryF ormat2a( )) pymodules/ python2. 6/bzrlib/ commands. py", line 923, in exception_ to_return_ code pymodules/ python2. 6/bzrlib/ commands. py", line 1123, in run_bzr pymodules/ python2. 6/bzrlib/ commands. py", line 691, in run_argv_aliases **all_cmd_ args) pymodules/ python2. 6/bzrlib/ commands. py", line 710, in run .run_simple( *args, **kwargs) pymodules/ python2. 6/bzrlib/ cleanup. py", line 135, in run_simple pymodules/ python2. 6/bzrlib/ cleanup. py", line 165, in _do_with_cleanups pymodules/ python2. 6/bzrlib/ builtins. py", line 1011, in run pymodules/ python2. 6/bzrlib/ branch. py", line 1086, in pull transports= possible_ transports, *args, **kwargs) pymodules/ python2. 6/bzrlib/ decorators. py", line 194, in write_locked pymodules/ python2. 6/bzrlib/ branch. py", line 3478, in pull tags_to_ master= not source_is_master) pymodules/ python2. 6/bzrlib/ branch. py", line 3593, in _pull to_master) pymodules/ python2. 6/bzrlib/ tag.py" , line 209, in merge_to run(to_ tags, overwrite, ignore_master) pymodules/ python2. 6/bzrlib/ cleanup. py", line 131, in run pymodules/ python2. 6/bzrlib/ cleanup. py", line 165, in _do_with_cleanups pymodules/ python2. 6/bzrlib/ tag.py" , line 241, in _merge_to_operation cleanup( master. lock_write( ).unlock) pymodules/ python2. 6/bzrlib/ remote. py", line 2468, in lock_write lock_write( token) pymodules/ python2. 6/bzrlib/ remote. py", line 2452, in _remote_lock_write pymodules/ python2. 6/bzrlib/ remote. py", line 57, in _call call(method, *args) pymodules/ python2. 6/bzrlib/ smart/client. py", line 132, in call
0.044 bazaar version: 2.3.0
0.044 bzr arguments: [u'pull']
0.077 looking for plugins in /home/nick/
0.100 looking for plugins in /usr/lib/
0.106 looking for plugins in /usr/lib/
0.109 encoding stdout as sys.stdout encoding 'UTF-8'
6.495 Using fetch logic to copy between RemoteRepositor
6.496 fetch up to rev {<email address hidden>}
9.540 Traceback (most recent call last):
File "/usr/lib/
return the_callable(*args, **kwargs)
File "/usr/lib/
ret = run(*run_argv)
File "/usr/lib/
return self.run(
File "/usr/lib/
return self._operation
File "/usr/lib/
self.cleanups, self.func, *args, **kwargs)
File "/usr/lib/
result = func(*args, **kwargs)
File "/usr/lib/
branch_from, overwrite, revision_id, local=local)
File "/usr/lib/
possible_
File "/usr/lib/
result = unbound(self, *args, **kwargs)
File "/usr/lib/
merge_
File "/usr/lib/
overwrite, ignore_master=not merge_tags_
File "/usr/lib/
return operation.
File "/usr/lib/
self.cleanups, self.func, self, *args, **kwargs)
File "/usr/lib/
result = func(*args, **kwargs)
File "/usr/lib/
add_
File "/usr/lib/
remote_tokens = self._remote_
File "/usr/lib/
repo_token or '', **err_context)
File "/usr/lib/
return self._client.
File "/usr/lib/
result, protocol = self...