- From: Stefan Eissing <stefan.eissing@greenbytes.de>
- Date: Fri, 26 Apr 2002 13:46:36 +0200
- To: "Edgar Schwarz" <Edgar.Schwarz@marconi.com>
- Cc: ietf-dav-versioning@w3.org
Edgar, Am Freitag den, 26. April 2002, um 13:06, schrieb Edgar Schwarz: > > Hi Stefan, > why are you so pessimistic ? > I would assume that most "safe save" algorithms will have a > recognizable > pattern > like MOVE a -> b, PUT a, DELETE b. this sequence of operations has an outcome which is defined by the RFCs 2518 and 3253. That definition makes sense if a client wants to safely replace a *without* autoversioning. A client which wants to do autversioning should do PUT b, COPY b -> a, DELETE b. > So a clever autoversioning server could assume that b was a > temporary file > which > can be thrown away (Also deleting the autoversioned history) and > autoversion a. The problems with this are: - the servers is guessing on the intention of the client - this could be wrong - Only after DELETE b, the server could guess that the new a is the next version of the former a (now b). - Before DELETE b, the new a is either a unversioned resource or a VCR with its own, new version history. - The situation gets easily messy if someone does a PROPPATCH a before DELETE b. If a is a VCR at that time, autoversioning strikes again and a has 2 versions. Both versions need to be applied to the version history of the "old" a... - How long should a server monitor for a DELETE after the PUT a? etc. > Or is this assuming too much and the behaviour can also be > expected in the > wild by a DeltaV client ? > Mit freundlichen Grüßen / Best regards > > Edgar Schwarz > > -- > Edgar.Schwarz@marconi.com, Postf. 1920, D-71509 Backnang,+49 7191 > 13 3382, > Marconi Communications, Access Division, Quality and Process > Improvement > Privat kann jeder soviel C programmieren oder Videos ansehen wie er mag > (Niklaus Wirth). Make it as simple as possible, but not simpler > (A.Einstein) > > > > > > "Clemm, Geoff" > <gclemm@rational.c An: > "'ietf-dav-versioning@w3.org'" <ietf-dav-versioning@w3.org> > om> Kopie: > Gesendet von: Blindkopie: > ietf-dav-versionin Thema: RE: > Problems with Windows XP "redirector" and Mac OS X WebDAVFS. > g-request@w3.org > > > 26.04.2002 05:00 > > > > > > > If the client first does a MOVE, then I agree there's not > much an auto-versioning server could reasonably do. > > Just for interests sake, what is the motivation for > those libraries to do a <MOVE-to-temp1, PUT-to-temp2, > MOVE-to-real, DELETE-temp1> instead of the simpler > <PUT-to-temp, MOVE-temp-to-actual> ? > > Cheers, > Geoff > > -----Original Message----- > From: Stefan Eissing [mailto:stefan.eissing@greenbytes.de] > > Am Mittwoch den, 24. April 2002, um 14:49, schrieb Clemm, Geoff: > >> One workaround that comes to mind is to interpret a MOVE from a >> non-version-controlled resource to a checked-out VCR as a COPY/DELETE. > > First the good news: if you have a shell on OSX and do a > cp test.txt to /Volumes/dav/test.txt > where "dav" is a WebDAV mounted volumes, the webdav code > in OSX does basically a LOCK/PUT/UNLOCK on an existing > test.txt. So (auto)versioning will do the job. > > However if you use the Finder or any Carbon/Cocoa Application, > some library code will do (on save in the GUI): > 1) MOVE /Volumes/dav/test.txt /Volumes/dav/test~.txt > 2) PUT /Volumes/dav/data1234.txt > 3) MOVE /Volumes/dav/data1234.txt /Volumes/dav/test.txt > 4) DELETE /Volumes/dav/test~.txt > > (modulo LOCK/UNLOCK) > > I see no chance to keep any versioning on text.txt. >
Received on Friday, 26 April 2002 07:46:46 UTC