[ 
https://issues.apache.org/jira/browse/HADOOP-20009?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18123775#comment-18123775
 ] 

ASF GitHub Bot commented on HADOOP-20009:
-----------------------------------------

slfan1989 opened a new pull request, #8797:
URL: https://github.com/apache/hadoop/pull/8797

   ### Description of PR
   
   JIRA: HADOOP-20009. Ensure token manager cleanup in 
testNodesLoadedAfterRestart.
   
   `TestZKDelegationTokenSecretManager.testNodesLoadedAfterRestart()` destroys 
the original token manager before creating a replacement, but does not destroy 
the replacement when the test finishes.  Cleanup is also not guaranteed when 
initialization or an assertion fails.
   
   After teardown closes ZooKeeper, the remaining `ExpiredTokenRemover` thread 
can encounter `ConnectionLossException` while updating the shared key ID 
counter and call `Runtime.exit(-1)`. This terminates the Surefire JVM with exit 
code 255, including when the test is inherited by HDFS-RBF's 
`TestZKDelegationTokenSecretManagerImpl`.
   
   This patch gives each manager its own `try/finally` lifecycle, ensuring 
cleanup before ZooKeeper teardown. It preserves the existing cache-load and 
token-expiration assertions.
   
   Observed failure:
   
https://github.com/sankalpsthakur/hadoop/actions/runs/37423881058/job/112143007635
   
   ### How was this patch tested?
   
   CI
   
   ### For code changes:
   
   - [ ] Does the title of this PR start with the corresponding JIRA issue id 
(e.g. 'HADOOP-17799. Your PR title ...')?
   - [ ] Object storage: Have the integration tests been executed and the 
endpoint
         declared according to the connector-specific documentation? *Note: 
Automated CI
         testing doesn't cover all cases so manual testing with cloud storage 
is still
         required.*
   - [ ] If adding new dependencies to the code, are these dependencies 
licensed in a way that is compatible for inclusion under [ASF 
2.0](http://www.apache.org/legal/resolved.html#category-a)?
   - [ ] If applicable, have you updated the `LICENSE`, `LICENSE-binary`, 
`NOTICE-binary` files?
   
   ### AI Tooling
   
   If an AI tool was used:
   
   - [ ] The PR includes the phrase "Contains content generated by <tool>"
         where <tool> is the name of the AI tool used.
   - [ ] My use of AI contributions follows the ASF legal policy
         https://www.apache.org/legal/generative-tooling.html
   




> Ensure token manager cleanup in testNodesLoadedAfterRestart
> -----------------------------------------------------------
>
>                 Key: HADOOP-20009
>                 URL: https://issues.apache.org/jira/browse/HADOOP-20009
>             Project: Hadoop Common
>          Issue Type: Bug
>          Components: test
>    Affects Versions: 3.5.1, 3.6.0
>            Reporter: Shilun Fan
>            Assignee: Shilun Fan
>            Priority: Major
>
> TestZKDelegationTokenSecretManager.testNodesLoadedAfterRestart() destroys the 
> original DelegationTokenManager before creating a replacement,
> but does not destroy the replacement when the test finishes. Cleanup is also 
> not guaranteed if initialization or an assertion fails.
> The teardown then closes ZooKeeper while the ExpiredTokenRemover thread may 
> still be running.
> The thread can encounter ConnectionLossException while updating the shared 
> key ID counter and call Runtime.exit(-1),
> terminating the Surefire JVM with exit code 255.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to