Author: rkanter
Date: Thu Oct  3 16:36:23 2013
New Revision: 1528924

URL: http://svn.apache.org/r1528924
Log:
OOZIE-1526 Oozie does not work with a secure HA JobTracker or ResourceManager 
(rkanter)

Modified:
    
oozie/trunk/core/src/main/java/org/apache/oozie/service/HadoopAccessorService.java
    
oozie/trunk/core/src/test/java/org/apache/oozie/service/TestHadoopAccessorService.java
    oozie/trunk/release-log.txt

Modified: 
oozie/trunk/core/src/main/java/org/apache/oozie/service/HadoopAccessorService.java
URL: 
http://svn.apache.org/viewvc/oozie/trunk/core/src/main/java/org/apache/oozie/service/HadoopAccessorService.java?rev=1528924&r1=1528923&r2=1528924&view=diff
==============================================================================
--- 
oozie/trunk/core/src/main/java/org/apache/oozie/service/HadoopAccessorService.java
 (original)
+++ 
oozie/trunk/core/src/main/java/org/apache/oozie/service/HadoopAccessorService.java
 Thu Oct  3 16:36:23 2013
@@ -481,10 +481,16 @@ public class HadoopAccessorService imple
                 if (target == null) {
                     target = jobConf.get(HADOOP_JOB_TRACKER);
                 }
-                String addr = NetUtils.createSocketAddr(target).getHostName();
-                renewer = new 
Text(SecurityUtil.getServerPrincipal(servicePrincipal, addr));
-                LOG.info("Delegation Token Renewer details: Principal=" + 
servicePrincipal + ",Target=" + target
-                        + ",Renewer=" + renewer);
+                try {
+                    String addr = 
NetUtils.createSocketAddr(target).getHostName();
+                    renewer = new 
Text(SecurityUtil.getServerPrincipal(servicePrincipal, addr));
+                    LOG.info("Delegation Token Renewer details: Principal=" + 
servicePrincipal + ",Target=" + target
+                            + ",Renewer=" + renewer);
+                }
+                catch (IllegalArgumentException iae) {
+                    renewer = new Text(servicePrincipal.split("[/@]")[0]);
+                    LOG.info("Delegation Token Renewer for " + 
servicePrincipal + " is " + renewer);
+                }
                 mrTokenRenewers.put(servicePrincipal, renewer);
             }
         }

Modified: 
oozie/trunk/core/src/test/java/org/apache/oozie/service/TestHadoopAccessorService.java
URL: 
http://svn.apache.org/viewvc/oozie/trunk/core/src/test/java/org/apache/oozie/service/TestHadoopAccessorService.java?rev=1528924&r1=1528923&r2=1528924&view=diff
==============================================================================
--- 
oozie/trunk/core/src/test/java/org/apache/oozie/service/TestHadoopAccessorService.java
 (original)
+++ 
oozie/trunk/core/src/test/java/org/apache/oozie/service/TestHadoopAccessorService.java
 Thu Oct  3 16:36:23 2013
@@ -131,6 +131,20 @@ public class TestHadoopAccessorService e
         jobConf.set("yarn.resourcemanager.address", "localhost:8032");
         jobConf.set("yarn.resourcemanager.principal", 
"rm/[email protected]");
         assertEquals(new Text("rm/[email protected]"), 
has.getMRTokenRenewerInternal(jobConf));
+
+        // Try the above with logical URIs (i.e. for HA)
+        jobConf = new JobConf(false);
+        jobConf.set("mapred.job.tracker", "jt-ha-uri");
+        jobConf.set("mapreduce.jobtracker.kerberos.principal", 
"mapred/[email protected]");
+        assertEquals(new Text("mapred/[email protected]"), 
has.getMRTokenRenewerInternal(jobConf));
+        jobConf = new JobConf(false);
+        jobConf.set("mapreduce.jobtracker.address", "jt-ha-uri");
+        jobConf.set("mapreduce.jobtracker.kerberos.principal", 
"mapred/[email protected]");
+        assertEquals(new Text("mapred/[email protected]"), 
has.getMRTokenRenewerInternal(jobConf));
+        jobConf = new JobConf(false);
+        jobConf.set("yarn.resourcemanager.address", "rm-ha-uri");
+        jobConf.set("yarn.resourcemanager.principal", 
"rm/[email protected]");
+        assertEquals(new Text("rm/[email protected]"), 
has.getMRTokenRenewerInternal(jobConf));
     }
 
     public void testCheckSupportedFilesystem() throws Exception {

Modified: oozie/trunk/release-log.txt
URL: 
http://svn.apache.org/viewvc/oozie/trunk/release-log.txt?rev=1528924&r1=1528923&r2=1528924&view=diff
==============================================================================
--- oozie/trunk/release-log.txt (original)
+++ oozie/trunk/release-log.txt Thu Oct  3 16:36:23 2013
@@ -1,5 +1,6 @@
 -- Oozie 4.1.0 release (trunk - unreleased)
 
+OOZIE-1526 Oozie does not work with a secure HA JobTracker or ResourceManager 
(rkanter)
 OOZIE-1500 Fix many OS-specific issues on Windows (dwann via rohini)
 OOZIE-1556 Change Bundle SELECT query to fetch only necessary columns and 
consolidate JPA Executors (ryota)
 OOZIE-1523 Create Windows versions of the shell scripts (dwann via rkanter)


Reply via email to