[
https://issues.apache.org/jira/browse/HDFS-14423?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jing Wang updated HDFS-14423:
-----------------------------
Description:
The following commands with percent (%) no longer work starting with version
3.1:
{code:java}
$ hadoop/bin/hdfs dfs -touchz webhdfs://localhost/%
$ hadoop/bin/hdfs dfs -cat webhdfs://localhost/%
cat: URLDecoder: Incomplete trailing escape (%) pattern
{code}
Also, plus (+ ) characters get turned into spaces when doing DN operations:
{code:java}
$ hadoop/bin/hdfs dfs -touchz webhdfs://localhost/a+b
$ hadoop/bin/hdfs dfs -mkdir webhdfs://localhost/c+d
$ hadoop/bin/hdfs dfs -ls /
Found 4 items
-rw-r--r-- 1 jing supergroup 0 2019-04-12 11:20 /a b
drwxr-xr-x - jing supergroup 0 2019-04-12 11:21 /c+d
{code}
I can confirm that these commands work correctly on 2.9 and 3.0. Also, the
usual hdfs:// client works as expected.
I suspect a relation with HDFS-13176 or HDFS-13582, but I'm not sure what the
right fix is. Note that Hive uses % to escape special characters in partition
values, so banning % might not be a good option. For example, Hive will create
a paths like {{table_name/partition_key=%2F}} when {{partition_key='/'}}.
was:
The following commands with percent (%) no longer work starting with version
3.1:
{code:java}
$ hadoop/bin/hdfs dfs -touchz webhdfs://localhost/%
$ hadoop/bin/hdfs dfs -cat webhdfs://localhost/%
cat: URLDecoder: Incomplete trailing escape (%) pattern
{code}
Also, plus (+ ) characters get turned into spaces when doing DN operations:
{code:java}
$ hadoop/bin/hdfs dfs -touchz webhdfs://localhost:50070/a+b
$ hadoop/bin/hdfs dfs -mkdir webhdfs://localhost:50070/c+d
$ hadoop/bin/hdfs dfs -ls /
Found 4 items
-rw-r--r-- 1 jing supergroup 0 2019-04-12 11:20 /a b
drwxr-xr-x - jing supergroup 0 2019-04-12 11:21 /c+d
{code}
I can confirm that these commands work correctly on 2.9 and 3.0. Also, the
usual hdfs:// client works as expected.
I suspect a relation with HDFS-13176 or HDFS-13582, but I'm not sure what the
right fix is. Note that Hive uses % to escape special characters in partition
values, so banning % might not be a good option. For example, Hive will create
a paths like {{table_name/partition_key=%2F}} when {{partition_key='/'}}.
> Percent (%) and plus (+) characters no longer work in WebHDFS
> -------------------------------------------------------------
>
> Key: HDFS-14423
> URL: https://issues.apache.org/jira/browse/HDFS-14423
> Project: Hadoop HDFS
> Issue Type: Bug
> Components: webhdfs
> Affects Versions: 3.2.0, 3.1.2
> Environment: Ubuntu 16.04, but I believe this is irrelevant.
> Reporter: Jing Wang
> Priority: Major
>
> The following commands with percent (%) no longer work starting with version
> 3.1:
> {code:java}
> $ hadoop/bin/hdfs dfs -touchz webhdfs://localhost/%
> $ hadoop/bin/hdfs dfs -cat webhdfs://localhost/%
> cat: URLDecoder: Incomplete trailing escape (%) pattern
> {code}
> Also, plus (+ ) characters get turned into spaces when doing DN operations:
> {code:java}
> $ hadoop/bin/hdfs dfs -touchz webhdfs://localhost/a+b
> $ hadoop/bin/hdfs dfs -mkdir webhdfs://localhost/c+d
> $ hadoop/bin/hdfs dfs -ls /
> Found 4 items
> -rw-r--r-- 1 jing supergroup 0 2019-04-12 11:20 /a b
> drwxr-xr-x - jing supergroup 0 2019-04-12 11:21 /c+d
> {code}
> I can confirm that these commands work correctly on 2.9 and 3.0. Also, the
> usual hdfs:// client works as expected.
> I suspect a relation with HDFS-13176 or HDFS-13582, but I'm not sure what the
> right fix is. Note that Hive uses % to escape special characters in partition
> values, so banning % might not be a good option. For example, Hive will
> create a paths like {{table_name/partition_key=%2F}} when
> {{partition_key='/'}}.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]