Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Collapse clean and non clean build requests on clean builders #266

Merged
merged 6 commits into from
Nov 12, 2024

Commits on Sep 24, 2024

  1. Collapse clean and non clean build requests on clean builders

    This is to address llvm#250.
    Where build requests were piling up on slower builders because
    they were clean/don't clean/clean/ don't clean etc. and we could
    not merge those requests because of that difference.
    
    Galina suggested that if we knew that the builder was going to
    clean the build first anyway, we could merge them. This commit
    implements that.
    
    We do this by first setting a "clean" attribute on the builder's
    factory object, that we can find later via in the collapse callback.
    
    So far only ClangBuilder passes this on but any builder can opt
    in by copying what it does.
    
    In the collapse function when comparing properties we delete the
    "clean_obj" key from both sets of properties if we know that the
    builder's factory is always clean.
    
    With some logging (not included in this commit) we can see it now
    collapses a clean/non-clean pair of requests:
    ```
    collapseRequests
    selfBuildSetProperties: {'scheduler': ('main:clang,clang-tools-extra,compiler-rt,flang,lld,llvm,mlir', 'Scheduler')}
    otherBuildSetProperties: {'scheduler': ('main:clang,clang-tools-extra,compiler-rt,flang,lld,llvm,mlir', 'Scheduler'), 'clean_obj': (True, 'Change')}
    Removing clean_obj from build set properties.
    Build set properties were the same.
    ```
    
    This has beeen tested by my colleague Omair Javaid on a test build
    master. Of course we only tested it with one of Linaro's builders,
    so it's possible we see other side effects in production.
    DavidSpickett committed Sep 24, 2024
    Configuration menu
    Copy the full SHA
    6ece001 View commit details
    Browse the repository at this point in the history

Commits on Oct 7, 2024

  1. Fix getattr default

    DavidSpickett committed Oct 7, 2024
    Configuration menu
    Copy the full SHA
    30087b1 View commit details
    Browse the repository at this point in the history

Commits on Oct 8, 2024

  1. Configuration menu
    Copy the full SHA
    104d7d5 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    23eab2f View commit details
    Browse the repository at this point in the history

Commits on Oct 9, 2024

  1. Configuration menu
    Copy the full SHA
    2dd5609 View commit details
    Browse the repository at this point in the history
  2. more formatting

    DavidSpickett committed Oct 9, 2024
    Configuration menu
    Copy the full SHA
    a734ce4 View commit details
    Browse the repository at this point in the history