Xiao Chen created HADOOP-12962: ---------------------------------- Summary: KMS key names are correctly encoded when creating key Key: HADOOP-12962 URL: https://issues.apache.org/jira/browse/HADOOP-12962 Project: Hadoop Common Issue Type: Bug Reporter: Xiao Chen Assignee: Xiao Chen
Creating a key that contains special character(s) in its name will result in failure when creating, while that key is in fact created ok on the underlying key provider. E.g. {noformat} $hadoop key create "key name" key name has not been created. java.io.IOException: HTTP status [500], exception [java.net.URISyntaxException], message [Illegal character in path at index 11: /v1/key/key name] java.io.IOException: HTTP status [500], exception [java.net.URISyntaxException], message [Illegal character in path at index 11: /v1/key/key name] at org.apache.hadoop.util.HttpExceptionUtils.validateResponse(HttpExceptionUtils.java:159) at org.apache.hadoop.crypto.key.kms.KMSClientProvider.call(KMSClientProvider.java:548) at org.apache.hadoop.crypto.key.kms.KMSClientProvider.call(KMSClientProvider.java:506) at org.apache.hadoop.crypto.key.kms.KMSClientProvider.createKeyInternal(KMSClientProvider.java:672) at org.apache.hadoop.crypto.key.kms.KMSClientProvider.createKey(KMSClientProvider.java:680) at org.apache.hadoop.crypto.key.KeyShell$CreateCommand.execute(KeyShell.java:483) at org.apache.hadoop.crypto.key.KeyShell.run(KeyShell.java:79) at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70) at org.apache.hadoop.crypto.key.KeyShell.main(KeyShell.java:515) {noformat} but {noformat} $ hadoop key list Listing keys for KeyProvider: KMSClientProvider[https://hostname:16000/kms/v1/] key name {noformat} -- This message was sent by Atlassian JIRA (v6.3.4#6332)