This is an automated email from the ASF dual-hosted git repository.
stevel pushed a commit to branch branch-3.3
in repository https://gitbox.apache.org/repos/asf/hadoop.git
The following commit(s) were added to refs/heads/branch-3.3 by this push:
new d7de378b222 YARN-11172. Fix TestClientRMTokens#testDelegationToken
introduced by HDFS-16563. (#4408)
d7de378b222 is described below
commit d7de378b2224fc59ecb1bf17b25c493324284af1
Author: zhengchenyu <[email protected]>
AuthorDate: Sat Jun 18 02:49:36 2022 +0800
YARN-11172. Fix TestClientRMTokens#testDelegationToken introduced by
HDFS-16563. (#4408)
Regression caused by HDFS-16563; the hdfs exception text was changed, but
because it was
a YARN test doing the check, Yetus didn't notice.
Contributed by zhengchenyu
---
.../AbstractDelegationTokenSecretManager.java | 6 +++---
.../yarn/server/resourcemanager/TestClientRMTokens.java | 17 +++++++----------
2 files changed, 10 insertions(+), 13 deletions(-)
diff --git
a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/security/token/delegation/AbstractDelegationTokenSecretManager.java
b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/security/token/delegation/AbstractDelegationTokenSecretManager.java
index 87d9acabe54..56249960c7c 100644
---
a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/security/token/delegation/AbstractDelegationTokenSecretManager.java
+++
b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/security/token/delegation/AbstractDelegationTokenSecretManager.java
@@ -505,9 +505,9 @@ extends AbstractDelegationTokenIdentifier>
}
long now = Time.now();
if (info.getRenewDate() < now) {
- err =
- "Token has" + identifier.getRealUser() + "expired, current time: " +
Time.formatTime(now)
- + " expected renewal time: " +
Time.formatTime(info.getRenewDate());
+ err = "Token " + identifier.getRealUser() + " has expired, current time:
"
+ + Time.formatTime(now) + " expected renewal time: " + Time
+ .formatTime(info.getRenewDate());
LOG.info("{}, Token={}", err, formatTokenId(identifier));
throw new InvalidToken(err);
}
diff --git
a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/TestClientRMTokens.java
b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/TestClientRMTokens.java
index e700bfd1e87..c53e4eaea1f 100644
---
a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/TestClientRMTokens.java
+++
b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/TestClientRMTokens.java
@@ -18,7 +18,6 @@
package org.apache.hadoop.yarn.server.resourcemanager;
import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertTrue;
import static org.junit.Assert.fail;
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.ArgumentMatchers.anyString;
@@ -36,6 +35,7 @@ import java.net.InetSocketAddress;
import java.security.PrivilegedAction;
import java.security.PrivilegedExceptionAction;
+import org.apache.hadoop.test.LambdaTestUtils;
import org.apache.hadoop.thirdparty.protobuf.InvalidProtocolBufferException;
import org.apache.hadoop.io.DataOutputBuffer;
import org.apache.hadoop.net.NetUtils;
@@ -112,7 +112,7 @@ public class TestClientRMTokens {
}
@Test
- public void testDelegationToken() throws IOException, InterruptedException {
+ public void testDelegationToken() throws Exception {
final YarnConfiguration conf = new YarnConfiguration();
conf.set(YarnConfiguration.RM_PRINCIPAL, "testuser/[email protected]");
@@ -199,14 +199,11 @@ public class TestClientRMTokens {
}
Thread.sleep(50l);
LOG.info("At time: " + System.currentTimeMillis() + ", token should be
invalid");
- // Token should have expired.
- try {
- clientRMWithDT.getNewApplication(request);
- fail("Should not have succeeded with an expired token");
- } catch (Exception e) {
- assertEquals(InvalidToken.class.getName(), e.getClass().getName());
- assertTrue(e.getMessage().contains("is expired"));
- }
+ // Token should have expired.
+ final ApplicationClientProtocol finalClientRMWithDT = clientRMWithDT;
+ final GetNewApplicationRequest finalRequest = request;
+ LambdaTestUtils.intercept(InvalidToken.class, "Token has expired",
+ () -> finalClientRMWithDT.getNewApplication(finalRequest));
// Test cancellation
// Stop the existing proxy, start another.
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]