One thing, it would have to be 3.0 since no new features are going into 2.x
anymore AFAIK.

Do I understand correctly that essentially what you want to be able to do
is limit parallelism in mapped task?  E.g. is it correct that you
essentially want to do task mapping, but with parallelism=1?  Would that be
equivalent? Or is it something more than that?  I am sorta surprised if we
don't have a limit like that.  Though I suspect DAG.max_active_tasks would
control it at least.

One other thing I'll mention.  Prior to 2.9.3, there was a problem that
caused trouble in some mapping scenarios.  After a task runs, it will
schedule downstream tasks. (we call this the mini scheduler).  Before 2.9.3
the mini scheduler would try to obtain a lock on dag run before running.
If you have 3000 tasks completing at about the same time, naturally this
can cause trouble.  So in 2.9.3 we skip mini scheduling if we can't obtain
lock immediately.  I wonder if this was part of the trouble you experienced
with mapping.

Reply via email to