nix-community / nix-eval-jobs

Parallel nix evaluator with a streamable json output [maintainers @Mic92, @adisbladis]
GNU General Public License v3.0
134 stars 24 forks source link

invalid behavior on darwin #158

Open patryk4815 opened 1 year ago

patryk4815 commented 1 year ago

There is invalid behavior on darwin. nix-eval-jobs just stops after first error.

Darwin:

bash-5.1$ nix run github:NixOS/nixpkgs#legacyPackages.aarch64-darwin.nix-eval-jobs -- --flake 'github:NixOS/nixpkgs#legacyPackages.aarch64-linux' --workers 1
warning: `--gc-roots-dir' not specified
error: Please be informed that this pseudo-package is not the only part of
       Nixpkgs that fails to evaluate. You should not evaluate entire Nixpkgs
       without some special measures to handle failing packages, like those taken
       by Hydra.
error: unexpected EOF reading a line

Linux:

[nix-shell:/tmp]# nix run github:NixOS/nixpkgs#legacyPackages.x86_64-linux.nix-eval-jobs -- --flake 'github:NixOS/nixpkgs#legacyPackages.aarch64-linux' --workers 1
warning: `--gc-roots-dir' not specified
error: Please be informed that this pseudo-package is not the only part of
       Nixpkgs that fails to evaluate. You should not evaluate entire Nixpkgs
       without some special measures to handle failing packages, like those taken
       by Hydra.
{"attr":"AAAAAASomeThingsFailToEvaluate","attrPath":["AAAAAASomeThingsFailToEvaluate"],"error":"error: Please be informed that this pseudo-package is not the only part of\n       Nixpkgs that fails to evaluate. You
 should not evaluate entire Nixpkgs\n       without some special measures to handle failing packages, like those taken\n       by Hydra."}                                                                           
 {"attr":"AMB-plugins","attrPath":["AMB-plugins"],"drvPath":"/nix/store/qbqc0z7k48bvqlg2h6ncs500wl6jgfli-AMB-plugins-0.8.1.drv","name":"AMB-plugins-0.8.1","outputs":{"out":"/nix/store/my4wxb7r0y3j9rldldvv8v2396pqn6db-AMB-plugins-0.8.1"},"system":"aarch64-linux"}                                                                                                                                                                       
 {"attr":"ArchiSteamFarm","attrPath":["ArchiSteamFarm"],"drvPath":"/nix/store/njj0jybm09890raq0xq51h41fdf8llpg-archisteamfarm-5.3.2.4.drv","name":"archisteamfarm-5.3.2.4","outputs":{"out":"/nix/store/nvvjms5fz2yw024mvnzkslvf1wf9qc3z-archisteamfarm-5.3.2.4"},"system":"aarch64-linux"}
 [........]
Mic92 commented 1 year ago

You cannot evaluate nixpkgs like this. The error message you see also tells you that. Checkout https://github.com/NixOS/nixpkgs/blob/master/pkgs/top-level/release.nix instead which is also used by hydra to evaluate nixpkgs.

patryk4815 commented 1 year ago

This was example lol

patryk4815 commented 1 year ago

@Mic92 Why on darwin its stops after first error. But on Linux it continues? It is proper behavior?

Mic92 commented 1 year ago

Potentially the eval process crashed. But it's hard to say from the log why. Maybe out of memory?

patryk4815 commented 1 year ago

Output with --debug:

~ > nix run github:NixOS/nixpkgs#legacyPackages.aarch64-darwin.nix-eval-jobs -- --flake 'github:NixOS/nixpkgs#legacyPackages.aarch64-linux' --workers 1 --debug                                           at 21:51:58
warning: `--gc-roots-dir' not specified
created worker process 39487
acquiring write lock on '/nix/var/nix/temproots/39488'
using cache entry '{"name":"source","type":"file","url":"https://api.github.com/repos/NixOS/nixpkgs/commits/HEAD"}' -> '{"etag":"W/\"eaa0451a02b575c9ac444b925012671c5ab6222514b7e32407ee9e1a78c38ddf\"","url":"https://api.github.com/repos/NixOS/nixpkgs/commits/HEAD"}', '/nix/store/7bvwiza6gxvg4rzq5wknx2y1vs77g7gz-source'
HEAD revision for 'https://api.github.com/repos/NixOS/nixpkgs/commits/HEAD' is bf6f2c40b6f6569b5b51846ddf59b20cbdfcfcb7
using cache entry '{"rev":"bf6f2c40b6f6569b5b51846ddf59b20cbdfcfcb7","type":"git-tarball"}' -> '{"lastModified":1670964055,"rev":"bf6f2c40b6f6569b5b51846ddf59b20cbdfcfcb7"}', '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source'
got tree '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source' from 'github:NixOS/nixpkgs/bf6f2c40b6f6569b5b51846ddf59b20cbdfcfcb7'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/flake.nix'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/flake.nix'
old lock file: {
  "nodes": {
    "root": {}
  },
  "root": "root",
  "version": 7
}
computing lock file node ''
new lock file: {
  "nodes": {
    "root": {}
  },
  "root": "root",
  "version": 7
}
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/default.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/default.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/fixed-points.nix'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/fixed-points.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/attrsets.nix'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/attrsets.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/systems'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/systems/default.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/systems/default.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/systems/flake-systems.nix'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/systems/flake-systems.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/default.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/default.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/minver.nix'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/minver.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/top-level/impure.nix'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/top-level/impure.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/top-level'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/top-level/default.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/top-level/default.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/trivial.nix'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/trivial.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/lists.nix'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/lists.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/stdenv/booter.nix'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/stdenv/booter.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/stdenv'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/stdenv/default.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/stdenv/default.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/systems/inspect.nix'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/systems/inspect.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/systems/architectures.nix'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/systems/architectures.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/systems/parse.nix'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/systems/parse.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/strings.nix'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/strings.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/types.nix'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/types.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/systems/platforms.nix'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/systems/platforms.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/modules.nix'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/modules.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/top-level/config.nix'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/top-level/config.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/options.nix'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/options.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/stdenv/linux'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/stdenv/linux/default.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/stdenv/linux/default.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/top-level/stage.nix'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/top-level/stage.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/stdenv/adapters.nix'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/stdenv/adapters.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/build-support/trivial-builders.nix'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/build-support/trivial-builders.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/top-level/splice.nix'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/top-level/splice.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/top-level/all-packages.nix'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/top-level/all-packages.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/top-level/aliases.nix'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/top-level/aliases.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/stdenv/generic'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/stdenv/generic/default.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/stdenv/generic/default.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/customisation.nix'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/customisation.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/tools/text/gawk'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/tools/text/gawk/default.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/tools/text/gawk/default.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/servers/x11/xorg/default.nix'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/servers/x11/xorg/default.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/servers/x11/xorg/overrides.nix'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/servers/x11/xorg/overrides.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/stdenv/generic/make-derivation.nix'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/stdenv/generic/make-derivation.nix'
worker process 39487 at '[]'
killing process 39487
created worker process 39489
acquiring write lock on '/nix/var/nix/temproots/39490'
using cache entry '{"name":"source","type":"file","url":"https://api.github.com/repos/NixOS/nixpkgs/commits/HEAD"}' -> '{"etag":"W/\"eaa0451a02b575c9ac444b925012671c5ab6222514b7e32407ee9e1a78c38ddf\"","url":"https://api.github.com/repos/NixOS/nixpkgs/commits/HEAD"}', '/nix/store/7bvwiza6gxvg4rzq5wknx2y1vs77g7gz-source'
HEAD revision for 'https://api.github.com/repos/NixOS/nixpkgs/commits/HEAD' is bf6f2c40b6f6569b5b51846ddf59b20cbdfcfcb7
using cache entry '{"rev":"bf6f2c40b6f6569b5b51846ddf59b20cbdfcfcb7","type":"git-tarball"}' -> '{"lastModified":1670964055,"rev":"bf6f2c40b6f6569b5b51846ddf59b20cbdfcfcb7"}', '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source'
got tree '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source' from 'github:NixOS/nixpkgs/bf6f2c40b6f6569b5b51846ddf59b20cbdfcfcb7'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/flake.nix'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/flake.nix'
old lock file: {
  "nodes": {
    "root": {}
  },
  "root": "root",
  "version": 7
}
computing lock file node ''
new lock file: {
  "nodes": {
    "root": {}
  },
  "root": "root",
  "version": 7
}
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/default.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/default.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/fixed-points.nix'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/fixed-points.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/attrsets.nix'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/attrsets.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/systems'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/systems/default.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/systems/default.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/systems/flake-systems.nix'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/systems/flake-systems.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/default.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/default.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/minver.nix'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/minver.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/top-level/impure.nix'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/top-level/impure.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/top-level'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/top-level/default.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/top-level/default.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/trivial.nix'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/trivial.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/lists.nix'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/lists.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/stdenv/booter.nix'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/stdenv/booter.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/stdenv'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/stdenv/default.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/stdenv/default.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/systems/inspect.nix'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/systems/inspect.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/systems/architectures.nix'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/systems/architectures.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/systems/parse.nix'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/systems/parse.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/strings.nix'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/strings.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/types.nix'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/types.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/systems/platforms.nix'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/systems/platforms.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/modules.nix'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/modules.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/top-level/config.nix'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/top-level/config.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/options.nix'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/options.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/stdenv/linux'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/stdenv/linux/default.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/stdenv/linux/default.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/top-level/stage.nix'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/top-level/stage.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/stdenv/adapters.nix'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/stdenv/adapters.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/build-support/trivial-builders.nix'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/build-support/trivial-builders.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/top-level/splice.nix'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/top-level/splice.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/top-level/all-packages.nix'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/top-level/all-packages.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/top-level/aliases.nix'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/top-level/aliases.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/stdenv/generic'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/stdenv/generic/default.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/stdenv/generic/default.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/customisation.nix'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/lib/customisation.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/tools/text/gawk'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/tools/text/gawk/default.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/tools/text/gawk/default.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/servers/x11/xorg/default.nix'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/servers/x11/xorg/default.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/servers/x11/xorg/overrides.nix'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/servers/x11/xorg/overrides.nix'
checking access to '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/stdenv/generic/make-derivation.nix'
evaluating file '/nix/store/ys78ai4s8qgh25szwfvrgq5xcw598h8i-source/pkgs/stdenv/generic/make-derivation.nix'
worker process 39489 at '["AAAAAASomeThingsFailToEvaluate"]'
error: Please be informed that this pseudo-package is not the only part of
       Nixpkgs that fails to evaluate. You should not evaluate entire Nixpkgs
       without some special measures to handle failing packages, like those taken
       by Hydra.
killing process 39489
error: unexpected EOF reading a line

I have free 25gb ram 🤔

patryk4815 commented 1 year ago

@Mic92 My diff and debug log:

Diff:

@@ -348,6 +363,8 @@ static void worker(EvalState &state, Bindings &autoArgs, AutoCloseFD &to,
             // Don't forget to print it into the STDERR log, this is
             // what's shown in the Hydra UI.
             printError(e.msg());
+        } catch (...) {
+           debug("[patryk4815] err %d at '%s' -> %s", getpid(), path, boost::current_exception_diagnostic_information());
         }

Log:

[patryk4815] err 57588 at '["AAAAAASomeThingsFailToEvaluate"]' -> Dynamic exception type: nix::ThrownError
std::exception::what: error: Please be informed that this pseudo-package is not the only part of
       Nixpkgs that fails to evaluate. You should not evaluate entire Nixpkgs
       without some special measures to handle failing packages, like those taken
       by Hydra.

So there is missing handling nix::ThrownError 🤔

patryk4815 commented 1 year ago
Full backtrace: ``` (lldb) bt * thread #1, stop reason = breakpoint 3.1 * frame #0: 0x0000000100702764 libc++abi.1.0.dylib`__cxa_throw frame #1: 0x0000000100dd23ec libnixexpr.dylib`void nix::EvalState::debugThrowLastTrace(nix::ThrownError&&) + 92 frame #2: 0x0000000100df81a0 libnixexpr.dylib`nix::$_4::operator()(nix::EvalState&, nix::PosIdx, nix::Value**, nix::Value&) const + 176 frame #3: 0x0000000100df80f0 libnixexpr.dylib`nix::$_4::__invoke(nix::EvalState&, nix::PosIdx, nix::Value**, nix::Value&) + 20 frame #4: 0x0000000100d4c168 libnixexpr.dylib`nix::EvalState::callFunction(nix::Value&, unsigned long, nix::Value**, nix::Value&, nix::PosIdx) + 984 frame #5: 0x0000000100d4cfbc libnixexpr.dylib`nix::ExprCall::eval(nix::EvalState&, nix::Env&, nix::Value&) + 216 frame #6: 0x0000000100d2742c libnixexpr.dylib`void nix::EvalState::forceValue(nix::Value&, nix::EvalState::forceValue(nix::Value&, nix::PosIdx)::'lambda'()) + 176 frame #7: 0x0000000100d4d060 libnixexpr.dylib`nix::EvalState::autoCallFunction(nix::Bindings&, nix::Value&, nix::Value&) + 104 frame #8: 0x0000000100045774 nix-eval-jobs`worker(state=0x000000016ff12380, autoArgs=0x000000016ff124d0, to=0x00006000004cc058, from=0x00006000004ce578) at nix-eval-jobs.cc:310:19 frame #9: 0x0000000100049bf8 nix-eval-jobs`decltype(__f=0x000000016ff129f0, __args=0x000000016ff12380, __args=0x000000016ff124d0, __args=0x00006000004cc058, __args=0x00006000004ce578)(nix::EvalState&, nix::Bindings&, nix::AutoCloseFD&, nix::AutoCloseFD&)>(fp)(std::__1::forward(fp0), std::__1::forward(fp0), std::__1::forward(fp0), std::__1::forward(fp0))) std::__1::__invoke(void (*&)(nix::EvalState&, nix::Bindings&, nix::AutoCloseFD&, nix::AutoCloseFD&), nix::EvalState&, nix::Bindings&, nix::AutoCloseFD&, nix::AutoCloseFD&) at type_traits:3899:1 frame #10: 0x0000000100049b40 nix-eval-jobs`void std::__1::__invoke_void_return_wrapper::__call(void (*&)(nix::EvalState&, nix::Bindings&, nix::AutoCloseFD&, nix::AutoCloseFD&), nix::EvalState&, nix::Bindings&, nix::AutoCloseFD&, nix::AutoCloseFD&) at __functional_base:348:9 frame #11: 0x0000000100049a70 nix-eval-jobs`std::__1::__function::__alloc_func, void (nix::EvalState&, nix::Bindings&, nix::AutoCloseFD&, nix::AutoCloseFD&)>::operator(this=0x000000016ff129f0, __arg=0x000000016ff12380, __arg=0x000000016ff124d0, __arg=0x00006000004cc058, __arg=0x00006000004ce578)(nix::EvalState&, nix::Bindings&, nix::AutoCloseFD&, nix::AutoCloseFD&) at functional:1553:16 frame #12: 0x0000000100048260 nix-eval-jobs`std::__1::__function::__func, void (nix::EvalState&, nix::Bindings&, nix::AutoCloseFD&, nix::AutoCloseFD&)>::operator(this=0x000000016ff129e8, __arg=0x000000016ff12380, __arg=0x000000016ff124d0, __arg=0x00006000004cc058, __arg=0x00006000004ce578)(nix::EvalState&, nix::Bindings&, nix::AutoCloseFD&, nix::AutoCloseFD&) at functional:1727:12 frame #13: 0x000000010004f5b8 nix-eval-jobs`std::__1::__function::__value_func::operator(this=0x000000016ff129e8, __args=0x000000016ff12380, __args=0x000000016ff124d0, __args=0x00006000004cc058, __args=0x00006000004ce578)(nix::EvalState&, nix::Bindings&, nix::AutoCloseFD&, nix::AutoCloseFD&) const at functional:1880:16 frame #14: 0x000000010004e280 nix-eval-jobs`std::__1::function::operator(this= Function = worker(nix::EvalState&, nix::Bindings&, nix::AutoCloseFD&, nix::AutoCloseFD&) , __arg=0x000000016ff12380, __arg=0x000000016ff124d0, __arg=0x00006000004cc058, __arg=0x00006000004ce578)(nix::EvalState&, nix::Bindings&, nix::AutoCloseFD&, nix::AutoCloseFD&) const at functional:2555:12 frame #15: 0x000000010004dc88 nix-eval-jobs`Proc::Proc(this=0x0000600000cdf6c8)> const&)::'lambda'()::operator()() const at nix-eval-jobs.cc:408:21 frame #16: 0x000000010004da1c nix-eval-jobs`decltype(__f=0x0000600000cdf6c8)> const&)::'lambda'()&>(fp)()) std::__1::__invoke const&)::'lambda'()&>(Proc::Proc(std::__1::function const&)::'lambda'()&) at type_traits:3899:1 frame #17: 0x000000010004d9d0 nix-eval-jobs`void std::__1::__invoke_void_return_wrapper::__call const&)::'lambda'()&>(Proc::Proc(std::__1::function const&)::'lambda'()&) at __functional_base:348:9 frame #18: 0x000000010004d9a8 nix-eval-jobs`std::__1::__function::__alloc_func const&)::'lambda'(), std::__1::allocator const&)::'lambda'()>, void ()>::operator(this=0x0000600000cdf6c8)() at functional:1553:16 frame #19: 0x000000010004bfdc nix-eval-jobs`std::__1::__function::__func const&)::'lambda'(), std::__1::allocator const&)::'lambda'()>, void ()>::operator(this=0x0000600000cdf6c0)() at functional:1727:12 frame #20: 0x000000010063e9b4 libnixutil.dylib`nix::startProcess(std::__1::function, nix::ProcessOptions const&)::$_4::operator()() const + 84 frame #21: 0x000000010063e960 libnixutil.dylib`decltype(std::__1::forward, nix::ProcessOptions const&)::$_4&>(fp)()) std::__1::__invoke, nix::ProcessOptions const&)::$_4&>(nix::startProcess(std::__1::function, nix::ProcessOptions const&)::$_4&) + 12 frame #22: 0x000000010063e954 libnixutil.dylib`void std::__1::__invoke_void_return_wrapper::__call, nix::ProcessOptions const&)::$_4&>(nix::startProcess(std::__1::function, nix::ProcessOptions const&)::$_4&) + 12 frame #23: 0x000000010063e948 libnixutil.dylib`std::__1::__function::__alloc_func, nix::ProcessOptions const&)::$_4, std::__1::allocator, nix::ProcessOptions const&)::$_4>, void ()>::operator()() + 12 frame #24: 0x000000010063e8c4 libnixutil.dylib`std::__1::__function::__func, nix::ProcessOptions const&)::$_4, std::__1::allocator, nix::ProcessOptions const&)::$_4>, void ()>::operator()() + 16 frame #25: 0x00000001006362bc libnixutil.dylib`nix::doFork(bool, std::__1::function) + 44 frame #26: 0x0000000100635ed4 libnixutil.dylib`nix::startProcess(std::__1::function, nix::ProcessOptions const&) + 60 frame #27: 0x0000000100049d4c nix-eval-jobs`Proc::Proc(this=0x00006000004cc020, proc= Function = worker(nix::EvalState&, nix::Bindings&, nix::AutoCloseFD&, nix::AutoCloseFD&) )> const&) at nix-eval-jobs.cc:398:18 frame #28: 0x0000000100047998 nix-eval-jobs`Proc::Proc(this=0x00006000004cc020, proc= Function = worker(nix::EvalState&, nix::Bindings&, nix::AutoCloseFD&, nix::AutoCloseFD&) )> const&) at nix-eval-jobs.cc:394:33 frame #29: 0x0000000100045048 nix-eval-jobs`std::__1::__unique_if::__unique_single std::__1::make_unique(void (&)(nix::EvalState&, nix::Bindings&, nix::AutoCloseFD&, nix::AutoCloseFD&)) at memory:2927:32 frame #30: 0x0000000100044510 nix-eval-jobs`collector(this=0x0000600000c0b1c0)::$_1::operator()() const at nix-eval-jobs.cc:445:49 frame #31: 0x000000010004446c nix-eval-jobs`decltype(__f=0x0000600000c0b1c0)::$_1&>(fp)()) std::__1::__invoke&, std::__1::condition_variable&)::$_1&>(collector(nix::Sync&, std::__1::condition_variable&)::$_1&) at type_traits:3899:1 frame #32: 0x0000000100044420 nix-eval-jobs`void std::__1::__invoke_void_return_wrapper::__call(collector(nix::Sync&, std::__1::condition_variable&)::$_1&) at __functional_base:348:9 frame #33: 0x00000001000443f8 nix-eval-jobs`std::__1::__function::__alloc_func&, std::__1::condition_variable&)::$_1, std::__1::allocator&, std::__1::condition_variable&)::$_1>, void ()>::operator(this=0x0000600000c0b1c0)() at functional:1553:16 frame #34: 0x0000000100042c68 nix-eval-jobs`std::__1::__function::__func&, std::__1::condition_variable&)::$_1, std::__1::allocator&, std::__1::condition_variable&)::$_1>, void ()>::operator(this=0x0000600000c0b1b8)() at functional:1727:12 frame #35: 0x00000001000104d4 nix-eval-jobs`std::__1::__function::__value_func::operator(this=0x0000600000c0b1b8)() const at functional:1880:16 frame #36: 0x000000010001048c nix-eval-jobs`std::__1::function::operator(this=0x0000600000c0b1b8)() const at functional:2555:12 frame #37: 0x0000000100098fe8 nix-eval-jobs`decltype(__f=0x0000600000c0b1b8)> >(fp)()) std::__1::__invoke >(std::__1::function&&) at type_traits:3899:1 frame #38: 0x0000000100098f48 nix-eval-jobs`void std::__1::__thread_execute >, std::__1::function >(__t=size=2, (null)=__tuple_indices<> @ 0x000000016ff12f5f)> >&, std::__1::__tuple_indices<>) at thread:280:5 frame #39: 0x00000001000985a0 nix-eval-jobs`void* std::__1::__thread_proxy >, std::__1::function > >(__vp=0x0000600000c0b1b0) at thread:291:5 frame #40: 0x00000001a545306c libsystem_pthread.dylib`_pthread_start + 148 ```
Mic92 commented 1 year ago

The error handling in nix-eval-jobs is not so great... It was mainly inherited from its hydra origin. I did start to refactor it into a more sane way: https://github.com/nix-community/nix-eval-jobs/commit/7c2a47602e8f7c6f0a1deb9efc01ff0a0aa26058 but haven't managed to finish it yet.

patryk4815 commented 1 year ago

maybe hydra need this fix also?