From: ccjason@us.ibm.com To: "Geoffrey M. Clemm" <geoffrey.clemm@rational.com> cc: ietf-dav-versioning@w3.org Message-ID: <85256820.00173636.00@D51MTA03.pok.ibm.com> Date: Thu, 4 Nov 1999 23:15:41 -0500 Subject: Re: Locking in a versioning server ... Below it looks like they could use checkout and then do the lock. But that certainly would make a depth lock tedious if preceeded by lots of check outs. And then many of those would have to be followed by checkins or uncheckouts. And in the case of shared locks, those clients would have to cooperate to coordinate the uncheckouts in an agreed fashion... unless we add something to the server to automate all this for the client. A versioning client doesn't lock or checkout to achieve stability of their view ... they control the revision selection rule of their workspace. So you only reserve (lock/checkout) a resource that you are about to change. Um. I forget the context of my statement, but it almost certainly was suggesting the checkout to prevent the lock from affecting other workspaces. If there is another way to limit the lock to the current workspace, that would be fine. Caveat: I don't expect people to use shared write locks. I do expect them to use shared read locks when those are defined. Not versioning clients. As above, they get their stability from control of the revision selection rule of their workspace, not by read-locking. Umm. Once again I forget the context of my statement, but if one is sharing a workspace, it seems that shared read locks would be a good thing to use even in a versioning client. Especially if locks provide URI locking or remapping. Perhaps you weren't suggesting otherwise though. As for the locking preventing changes from coming in from outside the workspace, it sounds like you've got that figured out and that it's just a matter of picking the right rsr to achieve that. I'm not clear what should happen with locks when one doesn't use one of those protective rsr's though. That is... I'm not sure the intent that a client might have... unless perhaps they didn't know that the rsr wasn't protective. Ah.. that probably was the context of the above. I probably was trying to suggest a common semantic regardless of the rsr in place. Anyway, I do think it's useful to be able to limit the scope of a lock to the current workspace. If it's necessary to do a checkout before hand to do so, so be it... but as I said above, that would be tedious for a client trying to create a depth lock.