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

OCI workflow overloads GHA cache #464

Closed
aaronmondal opened this issue Dec 12, 2023 · 3 comments · Fixed by #631
Closed

OCI workflow overloads GHA cache #464

aaronmondal opened this issue Dec 12, 2023 · 3 comments · Fixed by #631
Labels
bug Something isn't working no-effect-in-production

Comments

@aaronmondal
Copy link
Contributor

This is not reproducible locally and seems to be caused by our aggressive use of the GHA cache which makes an estimated ~400 queries to the GHA cache. GHA appears to just close the connection at some point and that causes the workflow to break.

As temporary workaround we can disable caching for the workflow, but we'll need to find a better solution as caching has a significant impact on this workflow's runtime.

@aaronmondal aaronmondal added the bug Something isn't working label Dec 12, 2023
This was referenced Dec 12, 2023
@adam-singer
Copy link
Contributor

GHA generally ok for simple things, at some point it just doesn't scale with workloads/size/complexity. https://buildkite.com/ tends to be a popular one among more complicated setups/verifications and github repos.

@aaronmondal
Copy link
Contributor Author

In this case we'd need a nix-specific cache. We don't store the entire cache as a single blob but instead cache each derivation individually: https://github.com/TraceMachina/nativelink/actions/caches For most builds this is fine, but our rust setup in nix caches each crate individually.

AFAIK the only commercial offering for a nix cache is https://cachix.org. We can also roll our own cache since we have the infrastructure for it.

@aaronmondal
Copy link
Contributor Author

We could deploy https://github.com/zhaofengli/attic

aaronmondal added a commit to aaronmondal/nativelink that referenced this issue Jan 18, 2024
Alleviates the pressure on the GitHub action cache by only allowing a
single nix-caching job at a time.

Fixes TraceMachina#464
Fixes TraceMachina#611
aaronmondal added a commit to aaronmondal/nativelink that referenced this issue Jan 18, 2024
Alleviates the pressure on the GitHub action cache by only allowing a
single nix-caching job at a time.

Fixes TraceMachina#464
Fixes TraceMachina#611
aaronmondal added a commit to aaronmondal/nativelink that referenced this issue Jan 25, 2024
This has been fixed upstream. Pull the change in early to speed up all
our workflows significantly.

Fixes: TraceMachina#464
aaronmondal added a commit to aaronmondal/nativelink that referenced this issue Jan 25, 2024
This has been fixed upstream. Pull the change in early to speed up
workflows significantly. This also includes missing `github-token`
fields which increase the API rate limit.

Fixes: TraceMachina#464
aaronmondal added a commit to aaronmondal/nativelink that referenced this issue Jan 25, 2024
This has been fixed upstream. Pull the change in early to speed up
workflows significantly. This also includes missing `github-token`
fields which increase the API rate limit.

Fixes: TraceMachina#464
aaronmondal added a commit to aaronmondal/nativelink that referenced this issue Jan 27, 2024
The previous crashes have been fixed in Nix 2.19.3. Thix commit also
includes missing `github-token` fields which increase the API rate
limit.

Fixes: TraceMachina#464
aaronmondal added a commit to aaronmondal/nativelink that referenced this issue Jan 30, 2024
The previous crashes have been fixed in Nix 2.19.3. Thix commit also
includes missing `github-token` fields which increase the API rate
limit.

Fixes: TraceMachina#464
aaronmondal added a commit that referenced this issue Jan 30, 2024
The previous crashes have been fixed in Nix 2.19.3. Thix commit also
includes missing `github-token` fields which increase the API rate
limit.

Fixes: #464
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working no-effect-in-production
Projects
None yet
3 participants