~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/remote.py

(parthm) Lock URL shown in case of failure to acquire lock (for smart server
 access) is now valid. Default timeout for lock contention is now 30s.
 (Parth Malwankar)

Show diffs side-by-side

added added

removed removed

Lines of Context:
2420
2420
            repo_token = self.repository.lock_write().repository_token
2421
2421
            self.repository.unlock()
2422
2422
        err_context = {'token': token}
2423
 
        response = self._call(
2424
 
            'Branch.lock_write', self._remote_path(), branch_token,
2425
 
            repo_token or '', **err_context)
 
2423
        try:
 
2424
            response = self._call(
 
2425
                'Branch.lock_write', self._remote_path(), branch_token,
 
2426
                repo_token or '', **err_context)
 
2427
        except errors.LockContention, e:
 
2428
            # The LockContention from the server doesn't have any
 
2429
            # information about the lock_url. We re-raise LockContention
 
2430
            # with valid lock_url.
 
2431
            raise errors.LockContention('(remote lock)',
 
2432
                self.repository.base.split('.bzr/')[0])
2426
2433
        if response[0] != 'ok':
2427
2434
            raise errors.UnexpectedSmartServerResponse(response)
2428
2435
        ok, branch_token, repo_token = response