GetComponents checks out git repositories serially

Issue #1916 closed
Ian Hinder created an issue

When called with --parallel, GetComponents still checks out git repositories serially. This may have been introduced with #83, but there is no information in that ticket about what was done.

Keyword:

Comments (8)

  1. Roland Haas
    • removed comment

    I suspect that this is actually due to 6dc98e842bad513ddbc5724ebb4f521823574020 in #1395. If you follow the code then you can see that there is one call to checkout per TARGET instruction the CRL file. However the checkout subroutine serializes the first checkout of each call and since for git there is often one git repo per TARGET (since the url is unique) this means that effectively all git repos are checked out serially.

    A full fix would be to track dependencies between checkouts (ie which combination of TARGET/CHECKOUT is contained in other TARGET/CHECKOUTs) and wait for dependencies to be satisfied before continuing.

  2. Roland Haas
    • removed comment

    Could someone review this please? If not I will push it without external review after Monday March 13th.

  3. Log in to comment