[
https://issues.apache.org/jira/browse/LIBCLOUD-552?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13993898#comment-13993898
]
Brian Metzler commented on LIBCLOUD-552:
----------------------------------------
Verified that using -X HEAD with curl, breaks compatibility with Objects with
spaces in the names.
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/local/lib/python2.7/dist-packages/libcloud/storage/base.py", line
163, in download_object
delete_on_failure=delete_on_failure)
File
"/usr/local/lib/python2.7/dist-packages/libcloud/storage/drivers/cloudfiles.py",
line 372, in download_object
success_status_code=httplib.OK)
File "/usr/local/lib/python2.7/dist-packages/libcloud/storage/base.py", line
502, in _get_object
driver=self)
libcloud.common.types.LibcloudError: <LibcloudError in
<libcloud.storage.drivers.cloudfiles.CloudFilesUSStorageDriver object at
0x2d49fd0> 'Unexpected status code: 400'>
Just upload a file into a container with a space in the name, then try to
download it. When attempting to pull the metadata, curl does not know just to
pull the header information with -X HEAD, and attempts to pull the full file.
With --head (-I), this is not the case, and works properly.
> CloudFiles CURL Request uses -X HEAD instead of --head or -I
> ------------------------------------------------------------
>
> Key: LIBCLOUD-552
> URL: https://issues.apache.org/jira/browse/LIBCLOUD-552
> Project: Libcloud
> Issue Type: Improvement
> Components: Storage
> Affects Versions: 0.14.0-beta3
> Environment: Ubuntu 12.04.4 LTS
> curl 7.22.0 (x86_64-pc-linux-gnu) libcurl/7.22.0 OpenSSL/1.0.1 zlib/1.2.3.4
> libidn/1.23 librtmp/2.3
> Python 2.7.3 and Python 3.2.3
> Reporter: Brian Metzler
> Priority: Critical
>
> When running driver.container.download_object(), it attempts to get the
> metadata of the object by using 'curl -X HEAD', instead of 'curl -I' or 'curl
> --head'. curl does not properly handle HEAD requests with -X HEAD, as it
> still attempts to download the full file.
> Just turn on debugging, and check out the time it takes for a standard curl
> -I versus curl -X HEAD.
--
This message was sent by Atlassian JIRA
(v6.2#6252)