On Dec 6, 2004, at 12:13 PM, Branko Čibej wrote:
> Peter N. Lundblad wrote:
>
>> This means pushing this check into the FS. I'm not sure everybody will
>> like that:-)
>>
> Since we defined locks to only be valid on the newest revision of a 
> file, then obviously the FS _has_ to check that for internal 
> consistency.
Let me clarify here:  all of the fs locking code *assumes* that a lock 
always applies to the latest version of the file.  There's no explicit 
checking of versions going on anywhere.  The command 'lock' means "lock 
the latest version of the file", and that's what it has always meant.  
It's only the *client* that has any concept of "lock this particular 
working file here in front of me."
So I'm going to add this new revnum argument to svn_fs_lock(), but it 
will be optional.  If it's passed in, then the fs will do a courtesy 
check for out-of-dateness, specifically for the benefit of an svn 
client.  If not passed in, no big deal.
Remember that general DAV clients have no concept of "out of date", 
because they don't have working copies.  An http LOCK request means 
"lock the latest version of the file", so thus DAV clients always do 
LOCK, followed by an immediate GET.  These clients won't be passing in 
the revnum, obviously.  :-)
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Mon Dec  6 20:05:41 2004