diff options
Diffstat (limited to 'round-robin-bisect.sh')
-rwxr-xr-x | round-robin-bisect.sh | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/round-robin-bisect.sh b/round-robin-bisect.sh index 8ec89466..ac6cc5cc 100755 --- a/round-robin-bisect.sh +++ b/round-robin-bisect.sh @@ -291,17 +291,22 @@ linux_git=$bad_url#$baseline_rev update_baseline=force EOF else + # Build for $bad_rev is successful, which can be due to a number + # of things: + # - Regressions in speed benchmarking are not 100% stable, + # - Something has changed in the build environment, + # - Underlying hardware has changed, + # - Something entirely different. + # In all these cases we recover by rebuilding from baseline sources + # and updating the baseline. + # If baseline reset->build->bisect->reset happens again and again, + # then this is a scripting or infrastructure problem, and we detect + # it by unusually high ratio of forced builds in CI dashboard. echo "WARNING: build for bad_rev $bad_rev succeeded" sed -i -e "s/\$/-spurious/" $artifacts/jenkins/build-name - # Regressions in speed benchmarking are not stable, - # so retry with resetting baseline artifacts. - case "${rr[ci_project]}/${rr[ci_config]}" in - tcwg_bmk*/*-O[23]*) - cat > $artifacts/trigger-build-reset <<EOF + cat > $artifacts/trigger-build-reset <<EOF update_baseline=force EOF - ;; - esac fi trap "" EXIT exit 0 |