Skip to content

Confusion regarding maxActiveRuns #897

Open
@vnghia

Description

@vnghia

Hi, going through the document, there are two places where maxActiveRuns are documented but it gives completely different meaning to me:

Inside the schema:

Limit on how many runs of this DAG can be active at once (especially relevant if the DAG has a frequent schedule).

I've understood that this parameter is used to control the maximum number of executions of the corresponding DAG that are allowed to run concurrently at the same time. I am using this meaning to limit the number of executions of DAGs that have to do some sort of locking on shared resources.

However, I've found out we can not execute a DAG concurrently and there is a feature request for it #786 so setting maxActiveRuns to any value other than 1 (including null) does not have any effect at all ?

In a different place:

Maximum parallel steps.

I've understood that this parameter is used to control the maximum number of steps of the corresponding DAG that are allowed to run concurrently at the same time. It means that setting it to 1 will force the DAG to run all steps sequentially. In the code it also suggests this meaning

// MaxActiveRuns specifies the maximum concurrent steps to run in an execution.
MaxActiveRuns int `json:"MaxActiveRuns"`

Could you clarify this parameter and could we have all two functionalities because they are both useful 😄 ?

Thank you very much!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions