- From: Clemm, Geoff <gclemm@rational.com>
- Date: Mon, 3 Mar 2003 18:34:11 -0500
- To: WebDAV <w3c-dist-auth@w3.org>
"Best effort" deletion is forbidden by the bind protocol, because it can cause a DELETE in one collection to cause a change in another collection, and this kind of "deletion side effect" was something we explicitly were trying to avoid. For example, suppose /henry/has-friend/jeff and /jim/has-friend/jeff were bindings to the same collection, JEFF, and JEFF has a binding named "wife" to a resource, MARI. Now suppose henry gets mad at jeff, and issues a "DELETE /henry/has-friend/jeff" request. But suppose at that moment someone else has a Depth:0 lock on the /henry/has-friend collection. The result of a "best effort" deletion is the removal of the "wife" binding from JEFF. That may be OK if you were just updating the information accessible from /henry (he isn't JEFF's friend anymore, and he's happy to purge as much information about JEFF as he can), but with multiple bindings, "best effort" deletion has now trashed the JEFF object in all the other contexts in which it is still visible (and the folks that still are his friends are still interested in that information). So we're not saying that "best effort deletion" is always a bad thing, but we are saying that "best effort deletion" is a bad thing when you care about multiple bindings to the same resource. Cheers, Geoff -----Original Message----- From: Julian Reschke [mailto:julian.reschke@gmx.de] Sent: Monday, March 03, 2003 5:08 PM To: Clemm, Geoff; WebDAV Subject: RE: Move and Delete (was: bind draft issues) > From: w3c-dist-auth-request@w3.org > [mailto:w3c-dist-auth-request@w3.org]On Behalf Of Clemm, Geoff > Sent: Monday, March 03, 2003 10:44 PM > To: WebDAV > Subject: RE: Move and Delete (was: bind draft issues) > > > > To emphasize an earlier comment, it is true that the bind protocol > places constraints on how a server is allowed to implement the DELETE > and MOVE methods. In particular, a server that supports the bind > protocol is not allowed to do a partial MOVE or a partial DELETE (even > though 2518 allows it). > ... Good catch. I remember that we discussed that at some point of time, but it seems it was never added to the issues list. Our server indeed is able to support the BIND method and live properties with all their semantics, yet won't do an atomic DELETE on collections. I agree that *technically* a server that properly handles bindings *could* do atomic deletes, but in reality, there may be reasons why you don't *want* to. Therefore, I'd like the spec not to require a specific behaviou, or, as a minimum, change the MUST to a SHOULD. Julian -- <green/>bytes GmbH -- http://www.greenbytes.de -- tel:+492512807760
Received on Monday, 3 March 2003 18:35:36 UTC