Opened 8 years ago

Closed 7 years ago

#297 closed design (fixed)

Retrying Requests

Reported by: mnot@… Owned by: julian.reschke@…
Priority: normal Milestone: 17
Component: p1-messaging Severity: Active WG Document
Keywords: Cc:

Description

p1 7.2.4 ("Client Behavior if Server Prematurely Closes Connection") specifies that under very specific circumstances, a client can retry a request with a body.

p1 7.1.4 allows retries only if a request is idempotent;

Non-idempotent request methods or sequences MUST NOT be automatically retried, although user agents MAY offer a human operator the choice of retrying the request(s).

1) Does this combination of requirements mean that only idempotent requests with bodies can be retried as per 7.2.4, or can ANY request with a body be retried as per that section (e.g., POST)? Either way, this should be clarified.

2) If a non-idempotent request with a body can be retried, this exposes a potential race condition on the server (e.g., when a client tries a POST, the connection is closed before they get a response, but the server has seen and processed part of the request, and then the request is retried). This should be documented IF it is allowed.

3) The requirement level for retries should be discussed (currently a SHOULD).

4) Whatever happens, the retry-related text should be consolidated in a new section so that it's cohesive and easier to find.

Attachments (1)

297.diff (5.4 KB) - added by julian.reschke@… 8 years ago.
Proposed patch

Download all attachments as: .zip

Change History (7)

comment:1 Changed 8 years ago by julian.reschke@…

  • Milestone changed from unassigned to 16
  • Owner changed from draft-ietf-httpbis-p1-messaging@… to julian.reschke@…

comment:2 Changed 8 years ago by julian.reschke@…

  • Milestone changed from 16 to 17

Changed 8 years ago by julian.reschke@…

Proposed patch

comment:3 Changed 8 years ago by julian.reschke@…

From [1453]:

Remove requirement to retry in certain cirumstances, pull other instructions about retries into a separate subsection and downgrade them from SHOULD to MAY (see #297)

comment:4 Changed 8 years ago by julian.reschke@…

  • Resolution set to incorporated
  • Status changed from new to closed

comment:5 Changed 7 years ago by mnot@…

  • Resolution incorporated deleted
  • Status changed from closed to reopened

comment:6 Changed 7 years ago by mnot@…

  • Resolution set to fixed
  • Status changed from reopened to closed
Note: See TracTickets for help on using tickets.