You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-commits@hadoop.apache.org by cn...@apache.org on 2013/07/08 19:50:47 UTC

svn commit: r1500860 - in /hadoop/common/branches/branch-1-win: CHANGES.branch-1-win.txt src/test/org/apache/hadoop/security/TestProxyUserFromEnv.java

Author: cnauroth
Date: Mon Jul  8 17:50:46 2013
New Revision: 1500860

URL: http://svn.apache.org/r1500860
Log:
MAPREDUCE-5371. TestProxyUserFromEnv#testProxyUserFromEnvironment failed caused by domains of windows users. Contributed by Xi Fang.

Modified:
    hadoop/common/branches/branch-1-win/CHANGES.branch-1-win.txt
    hadoop/common/branches/branch-1-win/src/test/org/apache/hadoop/security/TestProxyUserFromEnv.java

Modified: hadoop/common/branches/branch-1-win/CHANGES.branch-1-win.txt
URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-1-win/CHANGES.branch-1-win.txt?rev=1500860&r1=1500859&r2=1500860&view=diff
==============================================================================
--- hadoop/common/branches/branch-1-win/CHANGES.branch-1-win.txt (original)
+++ hadoop/common/branches/branch-1-win/CHANGES.branch-1-win.txt Mon Jul  8 17:50:46 2013
@@ -295,6 +295,9 @@ Branch-hadoop-1-win (branched from branc
     HADOOP-9685. hadoop-config.cmd: builds a classpath that is too long on
     windows. (Raja Aluri via cnauroth)
 
+    MAPREDUCE-5371. TestProxyUserFromEnv#testProxyUserFromEnvironment failed
+    caused by domains of windows users. (Xi Fang via cnauroth)
+
   Merged from branch-1
 
     HDFS-385. Backport: Add support for an experimental API that allows a

Modified: hadoop/common/branches/branch-1-win/src/test/org/apache/hadoop/security/TestProxyUserFromEnv.java
URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-1-win/src/test/org/apache/hadoop/security/TestProxyUserFromEnv.java?rev=1500860&r1=1500859&r2=1500860&view=diff
==============================================================================
--- hadoop/common/branches/branch-1-win/src/test/org/apache/hadoop/security/TestProxyUserFromEnv.java (original)
+++ hadoop/common/branches/branch-1-win/src/test/org/apache/hadoop/security/TestProxyUserFromEnv.java Mon Jul  8 17:50:46 2013
@@ -24,6 +24,7 @@ import java.io.BufferedReader;
 import java.io.IOException;
 import java.io.InputStreamReader;
 
+import org.apache.hadoop.util.Shell;
 import org.junit.Test;
 
 public class TestProxyUserFromEnv {
@@ -37,11 +38,24 @@ public class TestProxyUserFromEnv {
 
     UserGroupInformation realUgi = ugi.getRealUser();
     assertNotNull(realUgi);
+    String realUgiName = realUgi.getUserName();
+
     // get the expected real user name
     Process pp = Runtime.getRuntime().exec("whoami");
     BufferedReader br = new BufferedReader
                           (new InputStreamReader(pp.getInputStream()));
     String realUser = br.readLine().trim();
-    assertEquals(realUser, realUgi.getUserName());
+    // If on windows domain, token format is DOMAIN\\user and we want to
+    // extract only the user name
+    if (Shell.WINDOWS) {
+      int sp = realUser.lastIndexOf('\\');
+      if (sp != -1) {
+        realUser = realUser.substring(sp + 1);
+      }
+      // user names are case insensitive on Windows. Make consistent
+      realUser = realUser.toLowerCase();
+      realUgiName = realUgiName.toLowerCase();
+    }
+    assertEquals(realUser, realUgiName);
   }
 }