- From: David Morris <dwm@xpasc.com>
- Date: Sun, 6 Apr 2008 16:09:36 -0700 (PDT)
- cc: HTTP Working Group <ietf-http-wg@w3.org>
I don't recall how it was a SHOULD NOT instead of MUST NOT, but there is no way with pipelined requests for a client to besure that non-idempotent requests are handled properly unless the client waits for the 200 OK or equivalent response before making the next request. Even an origin server can process two pipelined requests out of order if individual requests are farmed out to different threads/processes. Even idempotent requests can obtain the wrong response if processed before completion of a prior non-idempotent request. Dave Morris On Sun, 6 Apr 2008, Henrik Nordstrom wrote: > > sön 2008-04-06 klockan 15:44 +0100 skrev Jamie Lokier: > > > However, I think the "point of confusion" may really have been about > > whether requests must be _processed_ in order. E.g. is a pipelined > > POST followed by GET on the same connection required to be processed > > in that order. > > Specs says nothing about how requests is processed. Only that > > "Clients SHOULD NOT pipeline requests using non-idempotent > methods or non-idempotent sequences of methods". > > > It seems that proxies can forward pipelined requests onto different > > connections, and then the network might reorder them, so the order of > > processing is not guaranteed. But also, in practice, most proxies > > seem to keep requests from the same connection forwarded to the same > > connection, perhaps to avoid those surprises ;-) > > Most proxies don't do pipelining at all, but do allow clients to queue a > pipeline of requests at the proxy. > > Regards > Henrik >
Received on Sunday, 6 April 2008 23:10:22 UTC