[ 
https://issues.apache.org/jira/browse/JCLOUDS-181?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13704869#comment-13704869
 ] 

Diwaker Gupta commented on JCLOUDS-181:
---------------------------------------

There are several ways to address this. One option is to define a global 
property that we when set, jclouds will explicitly filter out any expect header 
from all HTTP requests. Another option would be to only add the Expect header 
to those putBlob APIs that actually support it.
                
> Blobstores that lack proper support for 100-Continue don't work with JDK7
> -------------------------------------------------------------------------
>
>                 Key: JCLOUDS-181
>                 URL: https://issues.apache.org/jira/browse/JCLOUDS-181
>             Project: jclouds
>          Issue Type: Bug
>          Components: jclouds-blobstore
>    Affects Versions: 1.6.1
>            Reporter: Diwaker Gupta
>
> jclouds added the "Expect: 100-Continue" to the putBlob API for most 
> blobstores sometime back. Handling of 100-continue differs between JDK6 and 
> JDK7 in that unlike JDK6, JDK7 will expect a response from the server and 
> will only time out IF a read timeout has been set on the underlying HTTP 
> connection [1].
> As a result, if applications set Constants.PROPERTY_SO_TIMEOUT and use a 
> blobstore that doesn't properly support the Expect header (i.e., doesn't 
> respond with 100-Continue) on JDK7, the putBlob operation will essentially 
> hang forever.
> Specifically, both HPCS and Google Cloud Storage are impacted by this.
> [1] 
> http://grepcode.com/file/repository.grepcode.com/java/root/jdk/openjdk/7-b147/sun/net/www/protocol/http/HttpURLConnection.java?av=f#1008

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to