1105560808 opened a new issue, #16921:
URL: https://github.com/apache/dolphinscheduler/issues/16921

   ### Search before asking
   
   - [X] I had searched in the 
[issues](https://github.com/apache/dolphinscheduler/issues?q=is%3Aissue) and 
found no similar feature requirement.
   
   
   ### Description
   
   I found that in the current 3.2.2 release version, the worker checks whether 
a task can be executed only by determining if the WorkerTaskExecutorThreadPool 
is full. However, in some cases where tasks consume more resources, it is 
possible that the memory and CPU are already fully utilized even though the 
WorkerTaskExecutorThreadPool is not full. Continuing to execute tasks in such 
cases could cause worker task execution to fail. Furthermore, when the master 
uses the LowerWeight distribution strategy, it selects the node with the lowest 
weight based on metrics for task distribution. Shouldn't there be an additional 
check to either reject the task distribution or place it in a queue to wait for 
the next distribution? For example, when all worker nodes' CPU usage reaches 
100% or 90% or more, there would be no need to distribute tasks further.
   
   ### Are you willing to submit a PR?
   
   - [X] Yes I am willing to submit a PR!
   
   ### Code of Conduct
   
   - [X] I agree to follow this project's [Code of 
Conduct](https://www.apache.org/foundation/policies/conduct)
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: 
[email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to