ruanwenjun commented on issue #18570:
URL: 
https://github.com/apache/dolphinscheduler/issues/18570#issuecomment-5352244226

   After reviewing 3.4.2 and the current dev branch, the code does exclude a 
BUSY master from the normal server list and set its slot to -1. However, this 
alone does not create a permanent deadlock.
   
   CommandEngine checks overload before fetching commands, while heartbeat and 
existing workflow execution continue independently. Once the active workflow 
count drops below the threshold, the master reports NORMAL and recalculates its 
slot. In standalone mode, CommandEngine also waits for the current batch to 
finish before fetching again, so slot changes alone should not fetch the same 
command twice.
   
   The duplicate-command handling appears to be a separate issue: 
CommandDuplicateHandleException may reach bootstrapError wrapped in 
CompletionException, causing the direct instanceof check to fail and 
incorrectly mark the workflow as FAILURE. Could you provide the full exception 
chain, repeated command ID, and all master addresses around the first stuck 
instance? Preserving an old slot may also create overlapping assignments in a 
multi-master deployment.


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