From bcca1e86fad0e4ee9a5722c025c0959fb974bfa5 Mon Sep 17 00:00:00 2001 From: zhangshuyan Date: Wed, 21 Aug 2024 11:36:25 +0800 Subject: [PATCH] [SPARK-49300][CORE] Fix Hadoop delegation token leak when tokenRenewalInterval is not set. --- .../deploy/security/HadoopFSDelegationTokenProvider.scala | 3 +++ 1 file changed, 3 insertions(+) diff --git a/core/src/main/scala/org/apache/spark/deploy/security/HadoopFSDelegationTokenProvider.scala b/core/src/main/scala/org/apache/spark/deploy/security/HadoopFSDelegationTokenProvider.scala index 6ec281f5b440..c3f931f356ea 100644 --- a/core/src/main/scala/org/apache/spark/deploy/security/HadoopFSDelegationTokenProvider.scala +++ b/core/src/main/scala/org/apache/spark/deploy/security/HadoopFSDelegationTokenProvider.scala @@ -146,6 +146,9 @@ private[deploy] class HadoopFSDelegationTokenProvider val tokenKind = token.getKind.toString val interval = newExpiration - getIssueDate(tokenKind, identifier) logInfo(s"Renewal interval is $interval for token $tokenKind") + // The token here is only used to obtain renewal intervals. We should cancel it in + // a timely manner to avoid causing additional pressure on the server. + token.cancel(hadoopConf) interval }.toOption }