Re: BATCH operation [was Re: Comments on draft-ietf-deltav-versioning-08]

From: Ross Wetmore (rwetmore@verticalsky.com)
Date: Thu, Sep 28 2000

  • Next message: Bill Bumgarner: "Question about "opaque" collections"

    Message-ID: <39D360FD.6BFC06E0@verticalsky.com>
    Date: Thu, 28 Sep 2000 11:17:17 -0400
    From: Ross Wetmore <rwetmore@verticalsky.com>
    To: ietf-dav-versioning@w3.org
    Subject: Re: BATCH operation [was Re: Comments on     draft-ietf-deltav-versioning-08]
    
    
    It is probably worth noting that the general WebDAV operations are in
    most cases much more basic, and the few instances such as copy/move
    collections and propfind/patch that were not, were treated as special
    cases and protocol extensions built to handle them. The decision on
    BATCH from WebDAV appears to have been made and was in fact to 
    roll-your-own.
    
    Versioning operations are in fact more complex, and the granularity of
    the standard in a relative sense much finer making the problem of 
    dealing with compound operations much more endemic to this portion 
    than the base group.
    
    Not doing something will significantly increase the complexity of 
    implementation over even a server-side refactored solution. I hope this
    point has been made. There will be issues in code size, robustness and 
    performance of a WebDAV solution relative to a non-WebDAV implementation 
    and between some WebDAV solutions and others based on subtle alignments 
    of the protocol primitives. From the practical standpoint of market 
    acceptance, is this approach advisable?
    
    Having been through the "neat architectural design" -> "practical
    implementation" -> "marketability rejection" -> "refactor for performance 
    and caching fixes" cycle, it is much easier if the 4th stage issues are
    at least considered in the 1st stage design :-).
    
    Lest there be some misconception, my overall perception, enthusiasm for
    and appreciation for the excellent work done on this draft to date is 
    very high. Not having worked on this interpretation of the problem as
    long as others, my perspective and understanding is perhaps far less 
    while my enthusiasm higher which can make attempts at probing the system
    seem like overly harsh criticism. I want to compliment the authors for
    a fine piece of work, and Geoffrey in particular for his patience and
    pedagogical efforts in our exchanges.
    
    Cheers,
    RossW
    =====
    
    "Geoffrey M. Clemm" wrote:
    > 
    >    From: Ross Wetmore <rwetmore@verticalsky.com>
    > 
    >    ... a nested operation was assumed to take place just before the
    >    previous operation completed and add an extra condition to whether
    >    or not the operation was successful. If there was a failure the
    >    rollbacks would take place up the stack as currently defined, and
    >    as one is still in the context of the executing operation the code
    >    should already be in place to do this. I admit, this glosses over a
    >    lot of the "details" though.
    > 
    >    This is perhaps the most minimalist implementation I could come up
    >    with on the spur of the moment that might have the desired
    >    effect. I am sure there are better if there is some sort of
    >    concensus that this needs to be considered further. I am curious if
    >    there are any other opinions on some aspect of this?  I hope we
    >    have at least got the basic elements vs side issues flushed out by
    >    the last couple exchanges!
    > 
    > I agree that a "BATCH" method is worth pursuing.
    > 
    > I believe, though, that this should be pursued in a general WebDAV
    > context, since this is not a versioning-specific method, and should
    > be designed to be appropriate for non-versioning contexts.
    > 
    > In addition, I believe it is not clear that this optimization
    > (although a useful one) is required to implement effective versioning
    > clients and servers.
    > 
    > My preference then is to evaluate/develop a BATCH method in a general
    > WebDAV context (i.e. in the WebDAV rather than the DeltaV working
    > group), and to do this in parallel with (rather than as a
    > pre-requisite for) reaching draft standard status for the versioning
    > protocol extensions.
    > 
    > Cheers,
    > Geoff