[pve-devel] http protocol question

Alexandre DERUMIER aderumier at odiso.com
Fri Jun 7 05:17:35 CEST 2013


seem that you are not alone to have this problem:

http://stackoverflow.com/questions/15155014/inconsistent-browser-retry-behaviour-for-timed-out-post-requests
http://stackoverflow.com/questions/14302512/what-happens-when-no-response-is-received-for-a-request-im-seeing-retries



----- Mail original ----- 

De: "Alexandre DERUMIER" <aderumier at odiso.com> 
À: "Dietmar Maurer" <dietmar at proxmox.com> 
Cc: pve-devel at pve.proxmox.com 
Envoyé: Vendredi 7 Juin 2013 05:14:01 
Objet: Re: [pve-devel] http protocol question 

>>Does that really mean that the client is allowed to send the POST request twice? 

I don't known for POST twice on connection close, but I think I have already see this behaviour (not related to proxmox) with GET requests on timeout. 

I'm also not sure that all browsers are RFC compliants .... 

Maybe can you ask to question to Willy Tarreau (w at 1wt.eu) which maintain the haproxy project(http://haproxy.1wt.eu/). (He's very friendly and known deeply the http protocol) 

----- Mail original ----- 

De: "Dietmar Maurer" <dietmar at proxmox.com> 
À: pve-devel at pve.proxmox.com 
Envoyé: Jeudi 6 Juin 2013 19:27:29 
Objet: [pve-devel] http protocol question 

Hi all, 

I am just hunting a very strange bug. I observe that pveproxy sometimes receives the same POST request twice 
when it closes the connection due to a timeout. 

The HTTP Specs contains the following section: http://www.w3.org/Protocols/rfc2616/rfc2616-sec8.html 
----------- 
8.2.4 Client Behavior if Server Prematurely Closes Connection 
If an HTTP/1.1 client sends a request which includes a request body, but which does not include an Expect request-header field with the "100-continue" expectation, and if the client is not directly connected to an HTTP/1.1 origin server, and if the client sees the connection close before receiving any status from the server, the client SHOULD retry the request. If the client does retry this request, it MAY use the following "binary exponential backoff" algorithm to be assured of obtaining a reliable response: 
----------------- 

Does that really mean that the client is allowed to send the POST request twice? 


_______________________________________________ 
pve-devel mailing list 
pve-devel at pve.proxmox.com 
http://pve.proxmox.com/cgi-bin/mailman/listinfo/pve-devel 
_______________________________________________ 
pve-devel mailing list 
pve-devel at pve.proxmox.com 
http://pve.proxmox.com/cgi-bin/mailman/listinfo/pve-devel 



More information about the pve-devel mailing list