W3C home > Mailing lists > Public > w3c-dist-auth@w3.org > January to March 2003

RE: Move and Delete (was: bind draft issues)

From: Julian Reschke <julian.reschke@gmx.de>
Date: Wed, 5 Mar 2003 09:21:57 +0100
To: "Brian Korver" <briank@xythos.com>, "'WebDAV'" <w3c-dist-auth@w3.org>
Message-ID: <JIEGINCHMLABHJBIGKBCEEIAGKAA.julian.reschke@gmx.de>

> From: w3c-dist-auth-request@w3.org
> [mailto:w3c-dist-auth-request@w3.org]On Behalf Of Brian Korver
> Sent: Wednesday, March 05, 2003 2:23 AM
> To: 'WebDAV'
> Subject: Re: Move and Delete (was: bind draft issues)
>
>
>
> On Tuesday, March 4, 2003, at 04:48  PM, Julian Reschke wrote:
> [snip]
> > A MOVE is a simple namespace operation. All it needs to do is check
> > locks.
> >
> > A DELETE that cleans up in the foreground will need to check delete
> > privileges on all descendants. This set can be very huge. I think it's
> > an
> > extremely bad idea to do this in a single transaction (yes, we tried).
> [snip]
>
> Julian,
>
> I agree, but I think it's even worse than this.  Semantically,
> MOVE is merely a simple namespace operation, but in practice
> it may be more than that.  For instance, a move across unix
> filesystems must be implemented as a recursive copy (followed
> afterward by delete).

Brian,

in the Unix API, you don't move at all -- you link() then unlink(). "mv" is
just a user command that does it's best when the files reside in different
partitions. I think WebDAV MOVE should just fail if the resource cannot
really be moved (preserving all dead & live properties), and fail otherwise.
Just like in the Unix API, the caller *then* can decide to do a COPY/DELETE
instead.

Julian

--
<green/>bytes GmbH -- http://www.greenbytes.de -- tel:+492512807760
Received on Wednesday, 5 March 2003 03:22:07 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Tuesday, 2 June 2009 18:44:02 GMT