JDK-8065321 : Body of PUT request is not retransmitted in streaming mode of HttpURLConnection
  • Type: Bug
  • Component: core-libs
  • Sub-Component: java.net
  • Affected Version: 7u71
  • Priority: P3
  • Status: Resolved
  • Resolution: Duplicate
  • Submitted: 2014-11-19
  • Updated: 2014-12-15
  • Resolved: 2014-12-15
Related Reports
Duplicate :  
Description
Body part of PUT request is not retransmitted in streaming mode of 
HttpURLConnection although both, header and body, are expected to be 
retransmitted in some data loss situation(e.g. a response from server is not 
received).

This issue of not retransmitting body part of PUT request in 
HttpURLConnection causes the following dead lock situation between HTTP 
client and server.

(1) HTTP client sends a PUT request with body in streaming mode to HTTP 
server.
(2) HTTP client fails to receive the response then retransmits a PUT request 
which contains only header to the server(This is the issue)
 then wait a response from the server.
(4) HTTP server receives the PUT request which contains only header and 
continue waiting the body to come in.

Then, HTTP client and server get in dead lock. That is, the client is waiting 
a response from the server,
 but the server is waiting the body from the client.