[ 
https://issues.apache.org/jira/browse/HDFS-17246?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17782337#comment-17782337
 ] 

Ayush Saxena commented on HDFS-17246:
-------------------------------------

This is breaking TestDFSUtil#testIsValidName
[https://ci-hadoop.apache.org/view/Hadoop/job/hadoop-qbt-trunk-java8-linux-x86_64/1398/testReport/junit/org.apache.hadoop.hdfs/TestDFSUtil/testIsValidName/]

I think the if check is wrong, there is a missing bracket I believe
{noformat}
diff --git 
a/hadoop-hdfs-project/hadoop-hdfs-client/src/main/java/org/apache/hadoop/hdfs/DFSUtilClient.java
 
b/hadoop-hdfs-project/hadoop-hdfs-client/src/main/java/org/apache/hadoop/hdfs/DFSUtilClient.java
index 71cff2e3915..a3d14cac03f 100644
--- 
a/hadoop-hdfs-project/hadoop-hdfs-client/src/main/java/org/apache/hadoop/hdfs/DFSUtilClient.java
+++ 
b/hadoop-hdfs-project/hadoop-hdfs-client/src/main/java/org/apache/hadoop/hdfs/DFSUtilClient.java
@@ -663,7 +663,7 @@ public static boolean isValidName(String src) {
       String element = components[i];
       if (element.equals(".")  ||
           // For Windows, we must allow the : in the drive letter.
-          (!Shell.WINDOWS && i == 1 && element.contains(":"))  ||
+          (!(Shell.WINDOWS && i == 1) && element.contains(":"))  ||
           (element.contains("/"))) {
         return false;
       }

{noformat}
btw. Why is this creating trouble? This util should be kicking in for DFS paths 
right? & in HDFS we would be having HDFS Namespace, How Windows kicked in?


Second, A curious question. When talking to Namenode if my path has colon at 
index:1 & I am talking to Namenode via windows Shell, it will allow me to 
create the path & while doing so via Linux Shell it won't? Is that expected or 
is there any catch here?

cc. [~gaurava]/ [~elgoiri]

> Fix shaded client for building Hadoop on Windows
> ------------------------------------------------
>
>                 Key: HDFS-17246
>                 URL: https://issues.apache.org/jira/browse/HDFS-17246
>             Project: Hadoop HDFS
>          Issue Type: Bug
>          Components: hdfs-client
>    Affects Versions: 3.4.0
>         Environment: Windows 10
>            Reporter: Gautham Banasandra
>            Assignee: Gautham Banasandra
>            Priority: Major
>              Labels: pull-request-available
>             Fix For: 3.4.0
>
>
> Currently, the *shaded client* Yetus personality in Hadoop fails to build on 
> Windows - 
> https://github.com/apache/hadoop/blob/4c04a6768c0cb3d5081cfa5d84ffb389d92f5805/dev-support/bin/hadoop.sh#L541-L615.
> This happens due to the integration test failures in Hadoop client modules - 
> https://github.com/apache/hadoop/tree/4c04a6768c0cb3d5081cfa5d84ffb389d92f5805/hadoop-client-modules/hadoop-client-integration-tests.
> There are several issues that need to be addressed in order to get the 
> integration tests working -
> # Set the HADOOP_HOME, needed by the Mini DFS and YARN clusters spawned by 
> the integration tests.
> # Add Hadoop binaries to PATH, so that winutils.exe can be located.
> # Create a new user with Symlink privilege in the Docker image. This is 
> needed for the proper working of Mini YARN cluster, spawned by the 
> integration tests.
> # Fix a bug in DFSUtilClient.java that prevents colon ( *:* ) in the path. 
> The colon is used a delimiter for the PATH variable while specifying multiple 
> paths. However, this isn't a delimiter in the case of Windows and must be 
> handled appropriately.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: hdfs-issues-unsubscr...@hadoop.apache.org
For additional commands, e-mail: hdfs-issues-h...@hadoop.apache.org

Reply via email to