YARN-3227. Timeline renew delegation token fails when RM user's TGT is

expired. Contributed by Zhijie Shen

(cherry picked from commit d1abc5d4fc)
(cherry picked from commit 56c2050ab7)
(cherry picked from commit 780a9b1a98827a692e0ea9fbc92f9d1ab979e3e0)
This commit is contained in:
Xuan 2015-03-06 13:32:05 -08:00 committed by Vinod Kumar Vavilapalli
parent b25491dc45
commit a57ada6c1f
2 changed files with 5 additions and 0 deletions

View File

@ -105,6 +105,9 @@ Release 2.6.1 - UNRELEASED
YARN-3242. Asynchrony in ZK-close can lead to ZKRMStateStore watcher receiving YARN-3242. Asynchrony in ZK-close can lead to ZKRMStateStore watcher receiving
events for old client. (Zhihai Xu via kasha) events for old client. (Zhihai Xu via kasha)
YARN-3227. Timeline renew delegation token fails when RM user's TGT is expired
(Zhijie Shen via xgong)
Release 2.6.0 - 2014-11-18 Release 2.6.0 - 2014-11-18
INCOMPATIBLE CHANGES INCOMPATIBLE CHANGES

View File

@ -425,6 +425,7 @@ public class TimelineClientImpl extends TimelineClient {
UserGroupInformation callerUGI = isProxyAccess ? UserGroupInformation callerUGI = isProxyAccess ?
UserGroupInformation.getCurrentUser().getRealUser() UserGroupInformation.getCurrentUser().getRealUser()
: UserGroupInformation.getCurrentUser(); : UserGroupInformation.getCurrentUser();
callerUGI.checkTGTAndReloginFromKeytab();
try { try {
return callerUGI.doAs(action); return callerUGI.doAs(action);
} catch (UndeclaredThrowableException e) { } catch (UndeclaredThrowableException e) {
@ -474,6 +475,7 @@ public class TimelineClientImpl extends TimelineClient {
: UserGroupInformation.getCurrentUser(); : UserGroupInformation.getCurrentUser();
final String doAsUser = isProxyAccess ? final String doAsUser = isProxyAccess ?
UserGroupInformation.getCurrentUser().getShortUserName() : null; UserGroupInformation.getCurrentUser().getShortUserName() : null;
callerUGI.checkTGTAndReloginFromKeytab();
try { try {
return callerUGI.doAs(new PrivilegedExceptionAction<HttpURLConnection>() { return callerUGI.doAs(new PrivilegedExceptionAction<HttpURLConnection>() {
@Override @Override