race condition when pushing to svn repo
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Bazaar Subversion Plugin |
New
|
Undecided
|
Unassigned |
Bug Description
There is a race condition when pushing revisions to a svn-repo:
* dev1 uses bzr-svn to push several revisions
* at the same time, dev2 uses svn to commit a revision
* the revisions are interwoven: dev1-1, dev2, dev1-2 ...
Then:
* bzr segfaulted during the push.
* dev1's bzr repo will not contain dev2's revision
* bzr pull/missing/
My ~/.bzr.log output for that push:
0.125 encoding stdout as sys.stdout encoding 'UTF-8'
0.125 bzr arguments: [u'push']
0.126 looking for plugins in /home/nevans/
0.156 bzr-svn: using Subversion 1.4.6 ()
0.191 looking for plugins in /usr/lib/
0.191 Plugin name __init__ already loaded
0.191 Plugin name __init__ already loaded
0.197 encoding stdout as sys.stdout encoding 'UTF-8'
0.419 opening SVN RA connection to 'file:/
0.421 Unable to open <bzrlib.
[25456] 2008-10-10 16:04:36.689 WARNING: The svn+ syntax is deprecated, use https:/
0.432 opening SVN RA connection to 'https:/
73.714 pushing '<email address hidden>' (['svn-
168.121 pushing '<email address hidden>' (['<email address hidden>'])
254.193 pushing '<email address hidden>' (['<email address hidden>'])
(no return code in the logfile; it segfaulted)
So...
1) Would "dpush" avoid this race condition? Is it the only workflow that is safe from this race condition?
2) How do I fix my current repo?
the plot thickens:
== (nevans@ nevans- laptop) [Fri Oct 10]-(17:11:25) == crms/trunk $ bzr log --line --limit 10 nevans- laptop) [Fri Oct 10]-(17:11:48) == crms/trunk $ cd ../svn-trunk/ nevans- laptop) [Fri Oct 10]-(17:11:53) == crms/svn- trunk $ svn up nevans- laptop) [Fri Oct 10]-(17:12:34) == crms/svn- trunk $ bzr log --line --limit 10
~/src/mdlogix/
15549: kcompton 2008-10-10 <commit msg removed...>
15548: kcompton 2008-10-10 <commit msg removed...>
15547: jdallien 2008-10-10 <commit msg removed...>
15546: sshalatskiy 2008-10-10 <commit msg removed...>
15545: Nick Evans 2008-10-10 <commit msg removed...>
15544: Nick Evans 2008-10-10 <commit msg removed...>
15543: Nick Evans 2008-10-10 <commit msg removed...>
15542: cstrom 2008-10-10 <commit msg removed...>
15541: cstrom 2008-10-10 <commit msg removed...>
15540: rbraithwaite 2008-10-10 <commit msg removed...>
== (nevans@
~/src/mdlogix/
== (nevans@
~/src/mdlogix/
At revision 48824.
== (nevans@
~/src/mdlogix/
15549: kcompton 2008-10-10 <commit msg removed...>
15548: kcompton 2008-10-10 <commit msg removed...>
15547: jdallien 2008-10-10 <commit msg removed...>
15546: sshalatskiy 2008-10-10 <commit msg removed...>
15545: Nick Evans 2008-10-10 <commit msg removed...>
15544: cstrom 2008-10-10 <commit msg removed...>
15543: Nick Evans 2008-10-10 <commit msg removed...>
15542: Nick Evans 2008-10-10 <commit msg removed...>
15541: cstrom 2008-10-10 <commit msg removed...>
15540: cstrom 2008-10-10 <commit msg removed...>
Notice revision 15544 in the svn working copy.