Author: shv
Date: Tue Jun  5 04:58:06 2012
New Revision: 1346239

URL: http://svn.apache.org/viewvc?rev=1346239&view=rev
Log:
HDFS-1584. Check TGT and renew if needed when fetching delegation tokens using 
HFTP. Contributed by Kan Zhang and Benoy Antony.

Modified:
    hadoop/common/branches/branch-0.22/hdfs/CHANGES.txt
    
hadoop/common/branches/branch-0.22/hdfs/src/java/org/apache/hadoop/hdfs/HftpFileSystem.java

Modified: hadoop/common/branches/branch-0.22/hdfs/CHANGES.txt
URL: 
http://svn.apache.org/viewvc/hadoop/common/branches/branch-0.22/hdfs/CHANGES.txt?rev=1346239&r1=1346238&r2=1346239&view=diff
==============================================================================
--- hadoop/common/branches/branch-0.22/hdfs/CHANGES.txt (original)
+++ hadoop/common/branches/branch-0.22/hdfs/CHANGES.txt Tue Jun  5 04:58:06 2012
@@ -46,6 +46,9 @@ Release 0.22.1 - Unreleased
     pass exception information back to the caller.
     (Boris Shkolnik and Benoy Antony via shv)
 
+    HDFS-1584. Check TGT and renew if needed when fetching delegation tokens
+    using HFTP. (Kan Zhang and Benoy Antony via shv)
+
 Release 0.22.0 - 2011-11-29
 
   INCOMPATIBLE CHANGES

Modified: 
hadoop/common/branches/branch-0.22/hdfs/src/java/org/apache/hadoop/hdfs/HftpFileSystem.java
URL: 
http://svn.apache.org/viewvc/hadoop/common/branches/branch-0.22/hdfs/src/java/org/apache/hadoop/hdfs/HftpFileSystem.java?rev=1346239&r1=1346238&r2=1346239&view=diff
==============================================================================
--- 
hadoop/common/branches/branch-0.22/hdfs/src/java/org/apache/hadoop/hdfs/HftpFileSystem.java
 (original)
+++ 
hadoop/common/branches/branch-0.22/hdfs/src/java/org/apache/hadoop/hdfs/HftpFileSystem.java
 Tue Jun  5 04:58:06 2012
@@ -188,9 +188,6 @@ public class HftpFileSystem extends File
         }
       }
       
-      //Renew TGT if needed
-      ugi.reloginFromKeytab();
-      
       //since we don't already have a token, go get one over https
       if (delegationToken == null) {
         delegationToken = 
@@ -202,8 +199,10 @@ public class HftpFileSystem extends File
   
 
   @Override
-  public Token<?> getDelegationToken(final String renewer) throws IOException {
+  public synchronized Token<?> getDelegationToken(final String renewer) throws 
IOException {
     try {
+      //Renew TGT if needed
+      ugi.reloginFromKeytab();
       return ugi.doAs(new PrivilegedExceptionAction<Token<?>>() {
         public Token<?> run() throws IOException {
           Credentials c;


Reply via email to