[
https://issues.apache.org/jira/browse/HADOOP-12623?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Chen He updated HADOOP-12623:
-----------------------------
Summary: Hadoop Swift driver should support more flexible container name
than RFC952 (was: Swift should support more flexible container name than
RFC952)
> Hadoop Swift driver should support more flexible container name than RFC952
> ---------------------------------------------------------------------------
>
> Key: HADOOP-12623
> URL: https://issues.apache.org/jira/browse/HADOOP-12623
> Project: Hadoop Common
> Issue Type: New Feature
> Components: fs/swift
> Affects Versions: 2.7.1, 2.6.2
> Reporter: Chen He
>
> Just a thought.
> It will be great if Hadoop swift driver can support more flexible container
> name. Current Hadoop swift driver requires container name to follow RFC952.
> It will report error if container name does not obey RFC952:
> "Invalid swift hostname 'test.1.serviceName': hostname must in form
> container.service"
> However, user can use any other Swift object store drivers (cURL, cyberduck,
> JOSS, swift python driver, etc) to upload data to Object store but current
> hadoop swift driver can not recognize those containers whose names do not
> follow RFC952.
> I dig into the source code and figure out it is because of in
> RestClientBindings.java{
> public static String extractContainerName(URI uri) throws
> SwiftConfigurationException {
> return extractContainerName(uri.getHost());
> }
> }
> And URI.java line 3143 gives "host = null" .
> We may need to find a better way to do the container name parsing.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)