Skip to content

nix-eval-jobs + constituent globs#1433

Closed
Ma27 wants to merge 6 commits intoNixOS:masterfrom
flyingcircusio:nix-eval-jobs-constituent-globs
Closed

nix-eval-jobs + constituent globs#1433
Ma27 wants to merge 6 commits intoNixOS:masterfrom
flyingcircusio:nix-eval-jobs-constituent-globs

Conversation

@Ma27
Copy link
Copy Markdown
Member

@Ma27 Ma27 commented Jan 23, 2025

Depends on NixOS/nix-eval-jobs#349 & #1421.

Only the last commit is relevant for review, the rest is #1421.

delroth and others added 6 commits December 10, 2024 10:27
(cherry picked from commit 684cc50)
incrementally ingest eval results

nix-eval-jobs streams output, unlike hydra-eval-jobs. Now that we've
migrated, we can use this to:

1. Use less RAM by avoiding buffering a whole eval's worth of metadata
   into a Perl string and an array of JSON objects.
2. Make evals latency a bit lower by allowing the queue runner to start
   ingesting builds faster.

Also use the newly-restored constituents support in `nix-eval-jobs`

Note, we pass --workers and --max-memory-size to n-e-j

Lost in the h-e-j -> n-e-j migration, causing evaluation to always be
single threaded and limited to 4GiB RAM. Follow the config settings like
h-e-j used to do (via C++ code).

(cherry picked from commit 6d4ccff)
(cherry picked from commit b0e9b4b)
(cherry picked from commit cdfc5c81e8037d3e4818a3e459d0804b2c157ea9)
(cherry picked from commit 4b107e6)

Co-Authored-By: Maximilian Bosch <maximilian@mbosch.me>
Depends on NixOS/nix-eval-jobs#349 & NixOS#1421.

Almost equivalent to NixOS#1425, but with a small change: when having e.g. an
aggregate job with a glob that matches nothing, the jobset evaluation is
failed now. This was the intended behavior before (hydra-eval-jobset
fails hard if an aggregate is broken), the code-path was never reached
however since the aggregate was never marked as broken in this case
before.
@Ma27 Ma27 requested review from Ericson2314 and Mic92 January 23, 2025 12:29
@Ericson2314
Copy link
Copy Markdown
Member

Thanks for making this, @Ma27!

@Mic92
Copy link
Copy Markdown
Member

Mic92 commented Mar 26, 2025

New nix-eval-jobs with this feature has been released.

@zowoq
Copy link
Copy Markdown
Contributor

zowoq commented Mar 28, 2025

I've rebased the last commit and updated n-e-j to 2.26 in #1455.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants