Ticket #297 (closed design: fixed)
|Reported by:||email@example.com||Owned by:||firstname.lastname@example.org|
|Component:||p1-messaging||Severity:||Active WG Document|
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.
- Owner changed from email@example.com to firstname.lastname@example.org
- Milestone changed from unassigned to 16
- Status changed from new to closed
- Resolution set to incorporated
- Status changed from closed to reopened
- Resolution incorporated deleted