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

expired. Contributed by Zhijie Shen
This commit is contained in:
Xuan 2015-03-06 13:32:05 -08:00
parent 24db0812be
commit d1abc5d4fc
2 changed files with 5 additions and 0 deletions

View File

@ -713,6 +713,9 @@ Release 2.7.0 - 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

@ -439,6 +439,7 @@ public Object run() throws IOException {
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) {
@ -488,6 +489,7 @@ public HttpURLConnection getHttpURLConnection(final URL url) throws IOException
: 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