diff --git a/hadoop-common-project/hadoop-common/CHANGES.txt b/hadoop-common-project/hadoop-common/CHANGES.txt index dcaba89bf0..f22f079693 100644 --- a/hadoop-common-project/hadoop-common/CHANGES.txt +++ b/hadoop-common-project/hadoop-common/CHANGES.txt @@ -59,6 +59,9 @@ Trunk (unreleased changes) HADOOP-7721. Add log before login in KerberosAuthenticationHandler. (jitendra) + HADOOP-6490. Use StringUtils over String#replace in Path#normalizePath. + (Uma Maheswara Rao G via harsh) + Release 0.23.0 - Unreleased INCOMPATIBLE CHANGES diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/Path.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/Path.java index 8ac3b6ae53..6c0522360c 100644 --- a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/Path.java +++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/Path.java @@ -18,10 +18,12 @@ package org.apache.hadoop.fs; -import java.net.*; -import java.io.*; -import org.apache.avro.reflect.Stringable; +import java.io.IOException; +import java.net.URI; +import java.net.URISyntaxException; +import org.apache.avro.reflect.Stringable; +import org.apache.commons.lang.StringUtils; import org.apache.hadoop.classification.InterfaceAudience; import org.apache.hadoop.classification.InterfaceStability; import org.apache.hadoop.conf.Configuration; @@ -157,8 +159,8 @@ private void initialize(String scheme, String authority, String path, private String normalizePath(String path) { // remove double slashes & backslashes - path = path.replace("//", "/"); - path = path.replace("\\", "/"); + path = StringUtils.replace(path, "//", "/"); + path = StringUtils.replace(path, "\\", "/"); // trim trailing slash from non-root path (ignoring windows drive) int minLength = hasWindowsDrive(path, true) ? 4 : 1;