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

ASF GitHub Bot commented on HDFS-17824:
---------------------------------------

hadoop-yetus commented on PR #8309:
URL: https://github.com/apache/hadoop/pull/8309#issuecomment-4017706541

   :broken_heart: **-1 overall**
   
   
   
   
   
   
   | Vote | Subsystem | Runtime |  Logfile | Comment |
   |:----:|----------:|--------:|:--------:|:-------:|
   | +0 :ok: |  reexec  |   0m  0s |  |  Docker mode activated.  |
   | -1 :x: |  patch  |   0m 16s |  |  
https://github.com/apache/hadoop/pull/8309 does not apply to trunk. Rebase 
required? Wrong Branch? See 
https://cwiki.apache.org/confluence/display/HADOOP/How+To+Contribute for help.  
|
   
   
   | Subsystem | Report/Notes |
   |----------:|:-------------|
   | Console output | 
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-8309/1/console |
   | versions | git=2.34.1 |
   | Powered by | Apache Yetus 0.14.1 https://yetus.apache.org |
   
   
   This message was automatically generated.
   
   




> DataNode fails to start when dfs.datanode.directoryscan.threads is 0 or 
> negative
> --------------------------------------------------------------------------------
>
>                 Key: HDFS-17824
>                 URL: https://issues.apache.org/jira/browse/HDFS-17824
>             Project: Hadoop HDFS
>          Issue Type: Bug
>          Components: datanode
>    Affects Versions: 2.8.5
>            Reporter: AMC-team
>            Assignee: AMC-team
>            Priority: Major
>              Labels: pull-request-available
>         Attachments: HDFS-17824.000.patch
>
>
> When {{dfs.datanode.directoryscan.threads}} is configured to {{0}} or a 
> negative value, the DataNode initialization path constructs the directory 
> scanner with {{{}Executors.newFixedThreadPool(threads){}}}. Because the 
> thread count is non-positive, the JDK throws 
> {{{}java.lang.IllegalArgumentException{}}}, and the DataNode fails to start. 
> The code currently does not validate this configuration before creating the 
> thread pool.
> *Steps to Reproduce*
> 1. Set the properties above in {{{}hdfs-site.xml{}}}.
> 2. Start or restart the DataNode.
> 3. Observe the following stack trace and process exit:
> {code:java}
> java.lang.IllegalArgumentException
>   at 
> java.util.concurrent.ThreadPoolExecutor.<init>(ThreadPoolExecutor.java:1314)
>   at 
> java.util.concurrent.ThreadPoolExecutor.<init>(ThreadPoolExecutor.java:1237)
>   at java.util.concurrent.Executors.newFixedThreadPool(Executors.java:151)
>   at 
> org.apache.hadoop.hdfs.server.datanode.DirectoryScanner.<init>(DirectoryScanner.java:*
>  )
>   at 
> org.apache.hadoop.hdfs.server.datanode.DataNode.initDirectoryScanner(DataNode.java:*
>  )
>   at 
> org.apache.hadoop.hdfs.server.datanode.DataNode.initBlockPool(DataNode.java:1543)
>   ...
>  {code}
> *Actual Result* 
> DataNode startup aborts with IllegalArgumentException during DirectoryScanner 
> initialization; the node never becomes available.
> *Expected Result*
> Non-positive values of {{dfs.datanode.directoryscan.threads}} are handled 
> gracefully—either rejected early with a clear configuration error naming the 
> key and offending value, or automatically clamped to a safe default (≥1) with 
> a {{{}WARN{}}}, rather than crashing the process.



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