• 
      

    Change Evolver task execution to prepare and execute in batches.

    Review Request #10566 — Created May 28, 2019 and submitted

    Information

    Django Evolution
    master

    Reviewers

    Evolver now groups tasks by their type, and works with them in batches
    based on the type. That means all tasks of a type will be
    prepared/executed at once.

    It's now up to the task's class to handle the preparation and execution
    of the tasks. This allows them to compute state before or after, and to
    alter the state passed to each task.

    When executing tasks, each batch of tasks of a given type are, by
    default, executed in a transaction specific to the batch. Subclasses can
    change the logic as needed for transaction handling.

    Unit tests pass on Django 1.7 and 1.11.

    Summary ID
    Change Evolver task execution to prepare and execute in batches.
    `Evolver` now groups tasks by their type, and works with them in batches based on the type. That means all tasks of a type will be prepared/executed at once. It's now up to the task's class to handle the preparation and execution of the tasks. This allows them to compute state before or after, and to alter the state passed to each task. When executing tasks, each batch of tasks of a given type are, by default, executed in a transaction specific to the batch. Subclasses can change the logic as needed for transaction handling.
    b2bf13d354d975a6ef4065891db664751c605e34
    Description From Last Updated

    F811 redefinition of unused 'transaction' from line 8

    reviewbotreviewbot
    Checks run (1 failed, 1 succeeded)
    flake8 failed.
    JSHint passed.

    flake8

    chipx86
    david
    1. Ship It!
    2. 
        
    chipx86
    Review request changed
    Status:
    Completed
    Change Summary:
    Pushed to master (5355a5b)