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

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

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

   Main PR: https://github.com/apache/hadoop/pull/7061
   
   Description of PR
   
   JIRA: https://issues.apache.org/jira/browse/HADOOP-19280
   
   Current Flow: In the current flow, we are initializing the timer of the 
abfs-timer-client outside the metric collection enable check. As a result, for 
each file system, when the AbfsClient object is initialized, it spawns a thread 
to evaluate the time of the ABFS client. Since we are purging/closing the timer 
inside the metric collection check, these threads are not being closed, causing 
them to persist in a long-lived state.
   
   Changes Made: This PR contains the changes related to moving the 
initialization of the timer inside the metric collection check. Also includes 
check on metric collection if we are accessing the timer variable to avoid the 
null pointer exception.
   Created two test suites to check the behaviour of timer variable and thread 
spawn in case of metric collection enabled and disabled.




> ABFS: Initialize ABFS client timer only when metric collection is enabled
> -------------------------------------------------------------------------
>
>                 Key: HADOOP-19280
>                 URL: https://issues.apache.org/jira/browse/HADOOP-19280
>             Project: Hadoop Common
>          Issue Type: Bug
>          Components: fs/azure
>    Affects Versions: 3.4.0, 3.4.1
>            Reporter: Manish Bhatt
>            Assignee: Manish Bhatt
>            Priority: Major
>             Fix For: 3.5.0
>
>
> In the current flow, we are initializing the timer of the 
> {{abfs-timer-client}} outside the metric collection enable check. As a 
> result, for each file system, when the {{AbfsClient}} object is initialized, 
> it spawns a thread to evaluate the time of the ABFS client. Since we are 
> purging/closing the timer inside the metric collection check, these threads 
> are not being closed, causing them to persist in a long-lived state. To fix 
> this, we are moving the timer initialization inside the condition



--
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