RE: Interest in standardizing Batch methods?

Hello,

We would like to have a BATCH method too, beside possible performance
improvements, we would benefit from transaction handling. The BATCH method
could specify that all requests should be executed within a transaction.
I want to suggest instead of introducing a series of Bxxx methods, to
introduce only a single method named BATCH, which caries a series of WebDAV
methods within his XML body. This would allow to execute a scenario within a
transaction (e.g. lock, put, proppatch, unlock). Multiple delete methods
would be covered by this approach too.
The BATCH XML body would be able to specify headers on a general level
(identical to all contained methods) and specific headers for a single
method only.

This BATCH method would open the door into a BATCH language, e.g. execute
request #2 only if request #1 results in a 200/OK response code.

Best regards,

Juergen Pill


P.S. from the client programming perspective I would prefer the batch
possibility to the pipelining feature due to programming effort.


 -----Original Message-----
From: 	Clemm, Geoff [mailto:gclemm@rational.com] 
Sent:	Wednesday, January 09, 2002 16.17 PM
To:	WebDAV
Subject:	RE: Interest in standardizing Batch methods?

A single MOVE, DELETE, or PROPPATCH request is idempotent
(repeating the same request multiple times produces the
same result as just doing it once).
A sequence of DELETE's is always idempotent.  A sequence of PROPPATCH's
is always idempotent if the same property isn't updated by different
PROPPATCH requests in that sequence.  A sequence of MOVE's is always
idempotent if none of the Destination URLs overlap with any of the
request URL's.

Cheers,
Geoff


-----Original Message-----
From: Julian Reschke [mailto:julian.reschke@gmx.de]
Sent: Wednesday, January 09, 2002 3:34 AM
To: Lisa Dusseault; Greg Stein; Jim Whitehead
Cc: WebDAV
Subject: RE: Interest in standardizing Batch methods?


Looking at RFC2616:

"8.1.2.2 Pipelining
Clients SHOULD NOT pipeline requests using non-idempotent methods or
non-idempotent sequences of methods
(see section 9.1.2). 

So it seems that pipelining wouldn't be allowed for anything except PROPFIND
(MOVE/DELETE/PROPPATCH aren't idempotent), right?

> -----Original Message-----
> From: w3c-dist-auth-request@w3.org
> [mailto:w3c-dist-auth-request@w3.org]On Behalf Of Lisa Dusseault
> Sent: Wednesday, January 09, 2002 6:30 AM
> To: Greg Stein; Jim Whitehead
> Cc: WebDAV
> Subject: RE: Interest in standardizing Batch methods?
>
>
>
> > Personally, I'm going to guess they didn't pipeline requests, so a batch
> > mechanism was a must to get around deficiencies in their protocol stack.
>
> There's potentially a little more to it than that.
> (1) Imagine a client selects a bunch of resources and drags to
> move them all
> to a different folder.  A batch MOVE operation can do those in one
> transaction, so that the whole request fails if not all can be
> moved.  This
> becomes rather more important if the client is actually using an API
> (MSDAIPP??) that offers large-scope operations, yet how can it guarantee
> that operation will work or won't work if it can only send it piecemeal to
> the server?
>
> (2) See Yaron's email
> (http://lists.w3.org/Archives/Public/w3c-dist-auth/1998OctDec/0303.html)
> about why pipelining doesn't always work (can't always be used even when
> available).  I don't know to what extent pipelining is realistically
> unavailable/unworkable.
>
> That said, it's still not clear batch methods are so necessary they'd
> preempt other work we've got to do.
>
> Lisa
>

Received on Wednesday, 9 January 2002 11:12:17 UTC