branching inside a repository shouldn't lock it

Bug #73855 reported by Martin Pool
4
Affects Status Importance Assigned to Milestone
Bazaar
Fix Released
Wishlist
Unassigned

Bug Description

When doing a branch (or other fetch-based operation) we currently lock both source and destination repositories. If the two branches are in the same repository the fetch should be a no-op, and we should be able to do without the repo lock.

Revision history for this message
Aaron Bentley (abentley) wrote :

When we are branching, we should ensure that the last-revision of the the branch is not a ghost. In order to prevent the last-revision from being removed while we branch, we need a write lock.

Revision history for this message
John A Meinel (jameinel) wrote :

I think we shouldn't *double* lock the repository (causing problems on win32, etc). I think if the source is a ghost, making the target a ghost isn't any *worse*, so I think I agree with Martin that if we can do this lockless it is a good thing.

Further, use "lock_write()" doesn't actually take out a disk lock anymore. We only take one out during updating 'pack-names'. So maybe we should consider this Fix Released?

Changed in bzr:
importance: Undecided → Wishlist
status: New → Incomplete
Revision history for this message
John A Meinel (jameinel) wrote :

I decided to go with Fix Released since pack repositories don't take out a disk lock unless a fetch actually occurs.

Changed in bzr:
status: Incomplete → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.