Skip to content

Make MaximumTaskCall configurable #2546

@mjpieters

Description

@mjpieters

Description

I see that this was punted before but the hard-coded limit was simply raised rather that made configurable.

Now that there are matrix loops I am hitting the limit again, and want to be able to raise this for certain tasks.

My use case is that I have a matrix of Python versions, project names, and per-project versions (generated) to run a task against. Because the per-project version list is generated based on project name and Python version, I have to use a 3-tiered task approach:

  • 'generate all' task, matrix over python versions (list of 3) and project names (list of 11 names currently), so executing 33 times
    • 'generate project data', generates a list of versions for a given Python version and project name. This loops anywhere between 20 and 85 times, depending on the exact inputs. The average is 44
      • 'generate project data for a given version' task. This task has a status command, for a given project name and version, only a single file needs to be generated so usually only one of the given Python versions would produce output, the others would be skipped.

The innermost task can be executed up to 33 times 44 is 1452 times, ultimately producing 484 files. The hardcoded 1000 items limit is in the way here.

I can make this work by copying the status configuration to the intermediate task, cutting this down to 484 invocations, but this project is expected to grow some more and I forsee a future where even the middle task is going to be invoked more often than 1000 times, so please let me lift this limit when I know what I am doing?

Metadata

Metadata

Assignees

No one assigned

    Labels

    area: configChanges related to config files.state: duplicateDuplicates another issue.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions