Subject: [quicwg/base-drafts] Recommend H3_NO_ERROR for early responses (#3208)

From: Mike Bishop <[email-masked]>
Date: Fri, 08 Nov 2019 10:27:14 -0800

Fixes #3130.
You can view, comment on, or merge this pull request online at:

  https://github.com/quicwg/base-drafts/pull/3208

-- Commit Summary --

  * Recommend H3_NO_ERROR for early responses

-- File Changes --

    M draft-ietf-quic-http.md (23)

-- Patch Links --

https://github.com/quicwg/base-drafts/pull/3208.patch
https://github.com/quicwg/base-drafts/pull/3208.diff

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/quicwg/base-drafts/pull/3208

---

From: Ryan Hamilton <[email-masked]>
Date: Fri, 08 Nov 2019 12:35:28 -0800

RyanAtGoogle commented on this pull request.

> @@ -424,13 +424,14 @@ H3_REQUEST_INCOMPLETE.
 A server can send a complete response prior to the client sending an entire
 request if the response does not depend on any portion of the request that has
 not been sent and received. When the server does not need to receive the
-remainder of the request, it MAY abort reading the request stream with error
-code H3_EARLY_RESPONSE, send a complete response, and cleanly close the
-sending part of the stream. Clients MUST NOT discard complete responses as a
-result of having their request terminated abruptly, though clients can always
-discard responses at their discretion for other reasons.  If the server sends a
-partial or complete response but does not abort reading, clients SHOULD continue
-sending the body of the request and close the stream normally.
+remainder of the request, it MAY abort reading the request stream, send a

I know we try to avoid using QUIC transport level vocabulary in the HTTP/3 document, but I've tripped up on this language before and your change reminded me about it. When it says that the server may "abort reading the stream ... " and use "... H3_NO_ERROR" it *sounds* like it's trying to RST_STREAM the stream, but of course it's really just asking the peer to stop sending (via STOP_SENDING). Would it make sense to phrase this like:

When the server does not need to receive the remainder of the request, it MAY request that the client stop sending on the the request stream, send a complete response, and cleanly close the sending part of the stream.  The error code H3_NO_ERROR SHOULD be used when requesting that the client stop sending on the request stream.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/quicwg/base-drafts/pull/3208#pullrequestreview-314445324

---

From: Mike Bishop <[email-masked]>
Date: Fri, 08 Nov 2019 13:05:46 -0800

MikeBishop commented on this pull request.

The terminology is [in the transport spec](https://quicwg.org/base-drafts/draft-ietf-quic-transport.html#rfc.section.2.4), and one of the operations is:
> abort reading of the stream and request closure, possibly resulting in a STOP_SENDING frame (Section 19.5).

I think rephrasing the second sentence to try and improve the linkage would be good, though.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/quicwg/base-drafts/pull/3208#discussion_r344366314

---

From: Mike Bishop <[email-masked]>
Date: Fri, 08 Nov 2019 13:09:38 -0800

@MikeBishop pushed 1 commit.

f8efc92d9c63ee3180b9e2a3fa5f190c46fdcc54  Clarify what the error code is for

-- 
You are receiving this because you are subscribed to this thread.
View it on GitHub:
https://github.com/quicwg/base-drafts/pull/3208/files/6a72f4259942e5b84906277bc38bff550b5b9c0e..f8efc92d9c63ee3180b9e2a3fa5f190c46fdcc54

---

From: Ryan Hamilton <[email-masked]>
Date: Fri, 08 Nov 2019 14:41:44 -0800

Looks great!

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/quicwg/base-drafts/pull/3208#discussion_r344394860

---

From: ianswett <[email-masked]>
Date: Fri, 08 Nov 2019 14:44:37 -0800

ianswett approved this pull request.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/quicwg/base-drafts/pull/3208#pullrequestreview-314498961