On Wed, Jun 13, 2012 at 2:25 PM, Justin Case
<send_lotsa_spam_here_at_yahoo.com> wrote:
>
>
>> From: Johan Corveleyn <jcorvel_at_gmail.com>
>>
>> The problem is that, at the point where svn runs into this locked
>> file, half of the work has already been done (the metadata in wc.db
>> has already been updated). The remaining work (moving the file into
>> place) is scheduled in a specific table called the work_queue. The
>> work_queue *must* be run to completion to get back into a valid state.
>> It cannot be rolled back (undoing the other part in wc.db), at least
>> not with the current design.
>
> Ah I see now. Too bad then.
> Was it always that way, no rollback possible? Or maybe the ordering of operations used to be different so it gave up before updating the db? Because really I didn't run into this cleanup need until recently...
> Many thanks,
The wc.db and work_queue are part of WC-NG (with centralized
metadata), which was introduced with 1.7. The previous working copy
design was very different (small metadata files scattered around in
the .svn directories in each subdirectory of the working copy).
It's possible that 1.6 could exit more cleanly in this situation,
without leaving locks, I'm not sure (and I don't have a 1.6 laying
around here right now). Maybe you or someone else on this list can
verify this.
But certainly all 1.7.x versions should have the same problem as what
you're seeing now (at least I don't know of any change in the 1.7.x
line that could have changed this).
--
Johan
Received on 2012-06-13 14:38:48 CEST