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

CI (Buildkite): move the sanitizers builders (e.g. asan) to the experimental pipeline #41606

Merged
merged 3 commits into from
Jul 20, 2021

Conversation

DilumAluthge
Copy link
Member

@DilumAluthge DilumAluthge commented Jul 15, 2021

If you look at the last nine builds on master (https://buildkite.com/julialang/julia-master/builds?branch=master), the asan builder is failing in three of them.

This PR moves it to the experimental pipeline.

So it will still run, but:

  1. The build badge in the README won't be red.
  2. We won't get notified in Slack every time it fails.
  3. It will only run on pushes to master and PRs to master. It won't run on pushes to release-* or PRs to release-*.

@DilumAluthge DilumAluthge requested a review from a team as a code owner July 15, 2021 20:07
@DilumAluthge DilumAluthge removed the request for review from a team July 15, 2021 20:07
@DilumAluthge DilumAluthge added the ci Continuous integration label Jul 15, 2021
@DilumAluthge DilumAluthge marked this pull request as draft July 15, 2021 20:30
@tkf
Copy link
Member

tkf commented Jul 15, 2021

One failure (https://buildkite.com/julialang/julia-master/builds/1975#60f9f268-e332-4ed7-b184-a3747c6f60e9/1072) is the same as #41571 (comment). Since this happens after the build is successful, we can simply turn off only the check script if it were the only issue.

Two failures are due to

Generating REPL precompile statements... 13/31# Received cancellation signal, interrupting

https://buildkite.com/julialang/julia-master/builds/1929#318bb162-2b49-4817-b304-8c959b0b620e/192-1070

https://buildkite.com/julialang/julia-master/builds/1933#7f406849-c4cb-4504-bf87-791a03cede43/180-1058

But I'm not sure where # Received cancellation signal, interrupting is coming from. Is this something built into buildkite?

Copy link
Member

@tkf tkf left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's unfortunate but disabling this until we have a solution (or moving to the experimental pipeline) sounds good to me.

I don't have a good idea about how to debug generate_precompile.jl running in the CI though. Maybe it'd be better if we dump the debug output in CI on failure:

function generate_precompile_statements()
start_time = time_ns()
debug_output = devnull # or stdout

@DilumAluthge DilumAluthge added backport 1.6 Change should be backported to release-1.6 backport 1.7 labels Jul 16, 2021
@DilumAluthge
Copy link
Member Author

DilumAluthge commented Jul 16, 2021

Let's do the experimental pipeline, instead of disabling it completely.

I'll push those changes to this branch.

@DilumAluthge DilumAluthge changed the title CI (Buildkite): disable the sanitizers builders (e.g. asan) CI (Buildkite): move the sanitizers builders (e.g. asan) to the experimental pipeline Jul 17, 2021
@DilumAluthge DilumAluthge marked this pull request as ready for review July 17, 2021 06:33
@DilumAluthge
Copy link
Member Author

DilumAluthge commented Jul 17, 2021

Alright, I've moved it to the experimental pipeline instead of disabling it completely.

@DilumAluthge
Copy link
Member Author

DilumAluthge commented Jul 17, 2021

@staticfloat Any idea what's going on with the failing asan job? Looks like I broke something when I moved it to the experimental pipeline.

Downloading Julia 1.6
Source URL: https://julialang-s3.julialang.org/bin/linux/x64/1.6/julia-1.6-latest-linux-x86_64.tar.gz
Error: The plugin julia pre-command hook exited with status 60

@maleadt
Copy link
Member

maleadt commented Jul 19, 2021

But I'm not sure where # Received cancellation signal, interrupting is coming from. Is this something built into buildkite?

That happens when a job times out.

@staticfloat
Copy link
Sponsor Member

It also happens if we have build cancellation enabled, so if you push to the same branch while it's running.

@staticfloat
Copy link
Sponsor Member

I will also note that the experimental pipeline is reporting statuses to this PR; we probably don't want that.

@DilumAluthge
Copy link
Member Author

I will also note that the experimental pipeline is reporting statuses to this PR; we probably don't want that.

Ah yes I forgot to comment out the lines that post the status; I'll do that now.

@staticfloat
Copy link
Sponsor Member

Looks like I broke something when I moved it to the experimental pipeline.

The curl process is failing with error code 60; that means some kind of HTTPS error. My guess is that something is broken about the rootfs image it's using; what are the differences between the v1 and v1.1 versions?

@DilumAluthge
Copy link
Member Author

DilumAluthge commented Jul 20, 2021

Looks like I broke something when I moved it to the experimental pipeline.

The curl process is failing with error code 60; that means some kind of HTTPS error. My guess is that something is broken about the rootfs image it's using; what are the differences between the v1 and v1.1 versions?

So the differences are:

  1. v1.1 includes bash and less (CI: Add more Debian packages to the llvm-passes rootfs image #41544)
  2. I built v1.1 inside Docker.

@DilumAluthge
Copy link
Member Author

DilumAluthge commented Jul 20, 2021

I think the problem was that I built v1.1 inside Docker.

I've built v2.0 of the llvm_passes rootfs using GitHub Actions CI on the https://github.com/JuliaCI/rootfs-images repo. Let's see if that fixes things.

Since the asan builder won't post a commit status on this PR, follow along here: https://buildkite.com/julialang/julia-master-experimental

@DilumAluthge
Copy link
Member Author

I've built v2.0 of the llvm_passes rootfs using GitHub Actions CI on the https://github.com/JuliaCI/rootfs-images repo. Let's see if that fixes things.

It did in fact fix things!

https://buildkite.com/julialang/julia-master-experimental/builds/137

@DilumAluthge
Copy link
Member Author

Since asan is now passing (https://buildkite.com/julialang/julia-master-experimental/builds/137), this PR is now ready to merge once CI is green.

@DilumAluthge DilumAluthge added the merge me PR is reviewed. Merge when all tests are passing label Jul 20, 2021
@DilumAluthge DilumAluthge merged commit c95448f into master Jul 20, 2021
@DilumAluthge DilumAluthge deleted the dpa/disable-asan-buildkite branch July 20, 2021 09:58
@DilumAluthge DilumAluthge removed the merge me PR is reviewed. Merge when all tests are passing label Jul 20, 2021
KristofferC pushed a commit that referenced this pull request Jul 26, 2021
…xperimental pipeline (#41606)

(cherry picked from commit c95448f)
KristofferC pushed a commit that referenced this pull request Jul 26, 2021
…xperimental pipeline (#41606)

(cherry picked from commit c95448f)
KristofferC pushed a commit that referenced this pull request Aug 31, 2021
…xperimental pipeline (#41606)

(cherry picked from commit c95448f)
KristofferC pushed a commit that referenced this pull request Sep 3, 2021
…xperimental pipeline (#41606)

(cherry picked from commit c95448f)
@KristofferC KristofferC removed the backport 1.6 Change should be backported to release-1.6 label Sep 7, 2021
staticfloat pushed a commit that referenced this pull request Dec 23, 2022
…xperimental pipeline (#41606)

(cherry picked from commit c95448f)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
ci Continuous integration
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants