This is an automated email from the ASF dual-hosted git repository.

slfan1989 pushed a commit to branch branch-3.4
in repository https://gitbox.apache.org/repos/asf/hadoop.git


The following commit(s) were added to refs/heads/branch-3.4 by this push:
     new c122ff33b82 [YARN-11776] Handle NPE in the RMDelegationTokenIdentifier 
if localServiceAddress is null (#7431) Contributed by Abhey Rana.
c122ff33b82 is described below

commit c122ff33b82a727ac1f6c83760efcb7fd5c0bac7
Author: Abhey Rana <abhey.mn...@gmail.com>
AuthorDate: Thu Mar 6 12:14:26 2025 +0530

    [YARN-11776] Handle NPE in the RMDelegationTokenIdentifier if 
localServiceAddress is null (#7431) Contributed by Abhey Rana.
    
    Reviewed-by: Viraj Jasani <vjas...@apache.org>
    Signed-off-by: Shilun Fan <slfan1...@apache.org>
---
 .../hadoop/yarn/security/client/RMDelegationTokenIdentifier.java    | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git 
a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/main/java/org/apache/hadoop/yarn/security/client/RMDelegationTokenIdentifier.java
 
b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/main/java/org/apache/hadoop/yarn/security/client/RMDelegationTokenIdentifier.java
index ddd71a02ca1..ba3242fb321 100644
--- 
a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/main/java/org/apache/hadoop/yarn/security/client/RMDelegationTokenIdentifier.java
+++ 
b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/main/java/org/apache/hadoop/yarn/security/client/RMDelegationTokenIdentifier.java
@@ -21,6 +21,7 @@
 
 import java.io.IOException;
 import java.net.InetSocketAddress;
+import java.net.InetAddress;
 
 import org.apache.hadoop.classification.InterfaceAudience.Private;
 import org.apache.hadoop.classification.InterfaceAudience.Public;
@@ -139,9 +140,10 @@ private static ApplicationClientProtocol 
getRmClient(Token<?> token,
       String[] services = token.getService().toString().split(",");
       for (String service : services) {
         InetSocketAddress addr = NetUtils.createSocketAddr(service);
-        if (localSecretManager != null) {
+        if (localSecretManager != null && localServiceAddress != null) {
           // return null if it's our token
-          if (localServiceAddress.getAddress().isAnyLocalAddress()) {
+          InetAddress localServiceAddr = localServiceAddress.getAddress();
+          if (localServiceAddr != null && 
localServiceAddr.isAnyLocalAddress()) {
             if (NetUtils.isLocalAddress(addr.getAddress()) &&
                 addr.getPort() == localServiceAddress.getPort()) {
               return null;


---------------------------------------------------------------------
To unsubscribe, e-mail: common-commits-unsubscr...@hadoop.apache.org
For additional commands, e-mail: common-commits-h...@hadoop.apache.org

Reply via email to