You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-dev@hadoop.apache.org by "Chen He (JIRA)" <ji...@apache.org> on 2015/12/08 08:29:10 UTC
[jira] [Created] (HADOOP-12623) Swift should support more flexible
container name than RFC952
Chen He created HADOOP-12623:
--------------------------------
Summary: Swift 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.6.2, 2.7.1
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)