DanielLeens commented on issue #12121:
URL: https://github.com/apache/seatunnel/issues/12121#issuecomment-5663655219

   Thanks for linking #12277. I rechecked the current `dev` path before making 
a scope decision: `TaskCallTimer#timeoutAct` calls 
`RunBusWorkSupplier.runNewBusWork(false)`, and the supplier uses a cached 
executor, so a timeout can indeed create another cooperative worker without a 
fixed admission budget. The PR is therefore on the right first boundary: an 
explicit budget decision wired into the actual promotion path, not a detached 
policy object.
   
   Please keep both new limits opt-in with default `0` / unlimited. A finite 
default would change the behavior of existing deployments without an 
established safe capacity contract, so it should not be introduced in this 
first fix. The current status is still blocked: #12277's Build check is 
failing. Please repair that before treating the implementation as ready for 
review.
   
   After CI is green, the review evidence needs to prove these invariants 
deterministically: (1) denied promotion does not create an extra worker yet a 
queue with its last serving worker still reaches readiness and completion; (2) 
global and per-job reservations are released on normal yield, failure, and 
cancellation, so another job can progress; and (3) leaving both limits at `0` 
preserves the existing unbounded path. Keep thread-pool log fields as 
diagnostic evidence only; a broader metrics contract can remain a later, 
separate discussion.


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