W3C home > Mailing lists > Public > ietf-http-wg@w3.org > October to December 2006

Re: Etag-on-write, draft -04

From: Justin Erenkrantz <justin@erenkrantz.com>
Date: Mon, 4 Dec 2006 10:48:06 +0100
Message-ID: <5c902b9e0612040148u4d4088fav8da146eb5d726ad7@mail.gmail.com>
To: "Roy T. Fielding" <fielding@gbiv.com>
Cc: "Wilfredo Sánchez Vega" <wsanchez@wsanchez.net>, "HTTP Working Group" <ietf-http-wg@w3.org>, "Julian Reschke" <julian.reschke@gmx.de>

On 12/2/06, Roy T. Fielding <fielding@gbiv.com> wrote:
> Actually, the Subversion client wouldn't know the contents anyway,
> since only the server knows the variable replacement contents even
> for something as simple as ID.  That is why etag should not be sent
> in that case, and the result works with any client. Even if the
> Subversion client thought it knew what the transformation would be,
> and what the Id value should be, it still wouldn't know if any other
> transformations might have occurred and thus would have to do a GET
> (or receive some other form of notification that would tell it how to
> transform its current representation to the current form).  A far more
> useful extension would be to define a new 2xx response to PUT that
> includes both the new metadata and a patch that would allow the
> client to implement a matching transformation on its own copy.
>
> OTOH, it would also be more sensible for the Subversion client to strip
> the contents within $Id$ itself, before the PUT, and thus both client
> and server would have the same content and a strong etag could be
> returned.  In other words, the client uses its knowledge of the resource
> definition to remove the unnecessary bits at the application layer
> above the HTTP processing, thus making the HTTP interaction more
> efficient.
>
> I have no idea what the current Subversion client does in that
> situation,
> so this is all hypothetical.

FWIW, Subversion does the keyword translation locally on the client
side (in libsvn_wc).  In other words, it follows the second
definition.  This is why if you do a HTTP GET, you don't see the
keywords expanded.  Only the Subversion client has enough knowledge to
do the translations - the client must untranslate the keywords before
sending it up to the server.

HTH.  -- justin
Received on Monday, 4 December 2006 09:48:17 UTC

This archive was generated by hypermail 2.3.1 : Wednesday, 7 January 2015 16:03:16 UTC