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

Measure phase metrics in stdenv #45744

Closed
wants to merge 2 commits into from

Conversation

disassembler
Copy link
Member

Motivation for this change

This adds ability to record time it takes for each phase to run in a derivation. Note that this breaks reproducibility but is useful on CI systems for determining what's taking the longest in a derivation to complete. This is an optional parameter that most people won't want on most of the time.

Things done
  • Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS)
  • Built on platform(s)
    • NixOS
    • macOS
    • other Linux distributions
  • Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
  • Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
  • Tested execution of all binary files (usually in ./result/bin/)
  • Determined the impact on package closure size (by running nix path-info -S before and after)
  • Fits CONTRIBUTING.md.

@GrahamcOfBorg
Copy link

Timed out, unknown build status on x86_64-darwin (full log)

Attempted: stdenv

Partial log (click to expand)

cannot build derivation '/nix/store/sv0rn6rfsjr601jlpyz13s75d9asrisg-cctools-port-895.drv': 7 dependencies couldn't be built
cannot build derivation '/nix/store/dl0k8x0wbqrn239s84sr9f9kd99nrj73-hook.drv': 6 dependencies couldn't be built
cannot build derivation '/nix/store/a81l8ixhpdiv748avfss6bxfmrjll3k7-ICU-osx-10.10.5.drv': 3 dependencies couldn't be built
cannot build derivation '/nix/store/7jixhial98c0wncyjh26lwn06hn1haqm-cctools-binutils-darwin.drv': 4 dependencies couldn't be built
cannot build derivation '/nix/store/p1h7rpzlpjwrwnr408vr2w8j3af020rb-gnutar-1.30.drv': 3 dependencies couldn't be built
cannot build derivation '/nix/store/d2azar2ynwp9l8mmcgq3iqnli0yw4hxj-CF-osx-10.10.5.drv': 7 dependencies couldn't be built
cannot build derivation '/nix/store/5ibnfzqqnk3bfrq4xfrcqay9x9n3i77z-cctools-binutils-darwin-wrapper.drv': 7 dependencies couldn't be built
cannot build derivation '/nix/store/d6lmhjmyamcmfq852qnglhs61cgb7m9x-clang-wrapper-5.0.2.drv': 11 dependencies couldn't be built
cannot build derivation '/nix/store/5kj3v6whs8vq27hy92pa0dhkk3w7zdhk-stdenv-darwin.drv': 36 dependencies couldn't be built
error: build of '/nix/store/5kj3v6whs8vq27hy92pa0dhkk3w7zdhk-stdenv-darwin.drv' failed

@GrahamcOfBorg
Copy link

Timed out, unknown build status on x86_64-linux (full log)

Attempted: stdenv

Partial log (click to expand)

cannot build derivation '/nix/store/ks0xjq5gfb2gmnzhvy9zh0b02wczd8a8-help2man-1.47.6.drv': 2 dependencies couldn't be built
cannot build derivation '/nix/store/032hwidp9yyymfp9mi69m39fa9hmbsqm-binutils-wrapper-2.30.drv': 4 dependencies couldn't be built
cannot build derivation '/nix/store/hwik710wq9x15jk4dgn1xh24z0v18jlh-diffutils-3.6.drv': 3 dependencies couldn't be built
cannot build derivation '/nix/store/zw9wf254gxcn0a224ksqp1ksnrvshbai-findutils-4.6.0.drv': 2 dependencies couldn't be built
cannot build derivation '/nix/store/g2p3sz1qldqjwawpk3c7mqnjyayk5v9x-libtool-2.4.6.drv': 2 dependencies couldn't be built
cannot build derivation '/nix/store/k438gp6mxbpi1qfdpi995m50addsa8cd-gcc-wrapper-7.3.0.drv': 5 dependencies couldn't be built
cannot build derivation '/nix/store/6zr2zsc2yis0ih9gp30fndxjb72w5pcf-hook.drv': 3 dependencies couldn't be built
cannot build derivation '/nix/store/ri4vrlwdxj4m6134fm69i2jznfqsip6s-patch-2.7.6.drv': 3 dependencies couldn't be built
cannot build derivation '/nix/store/qfzy3bc32gfvhqnbgpri4n16c5zzz99q-stdenv-linux.drv': 23 dependencies couldn't be built
error: build of '/nix/store/qfzy3bc32gfvhqnbgpri4n16c5zzz99q-stdenv-linux.drv' failed

@GrahamcOfBorg
Copy link

Success on aarch64-linux (full log)

Attempted: stdenv

Partial log (click to expand)

shrinking /nix/store/v8xyys6lh1gkr9p27831jlznjb35h6gx-findutils-4.6.0/bin/find
gzipping man pages under /nix/store/v8xyys6lh1gkr9p27831jlznjb35h6gx-findutils-4.6.0/share/man/
strip is /nix/store/8zbl35kgg8v7gircl3pvy9027vslll1q-bootstrap-tools/bin/strip
stripping (with command strip and flags -S) in /nix/store/v8xyys6lh1gkr9p27831jlznjb35h6gx-findutils-4.6.0/libexec  /nix/store/v8xyys6lh1gkr9p27831jlznjb35h6gx-findutils-4.6.0/bin
checking for references to /build in /nix/store/v8xyys6lh1gkr9p27831jlznjb35h6gx-findutils-4.6.0...
shrinking RPATHs of ELF executables and libraries in /nix/store/2f0cganj3gdb064m743hzf8bn92chm8x-findutils-4.6.0-info
strip is /nix/store/8zbl35kgg8v7gircl3pvy9027vslll1q-bootstrap-tools/bin/strip
checking for references to /build in /nix/store/2f0cganj3gdb064m743hzf8bn92chm8x-findutils-4.6.0-info...
building '/nix/store/0hadmsl3b35ds4xv3p435rryz0bmk63h-stdenv-linux.drv'...
/nix/store/42xn0awn7syyq8n05x99mfp8daiccijk-stdenv-linux

@@ -144,6 +144,11 @@ exitHandler() {
# - system time for all child processes
echo "build time elapsed: " "${times[@]}"
fi
if [ -n "${enablePhaseMetrics:-}" ] && [ -d "$out" ]; then
Copy link
Member

Choose a reason for hiding this comment

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

Maybe error out if enablePhaseMetrics is set but out is not a directory.

Copy link
Member Author

Choose a reason for hiding this comment

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

my concern there was if I error out, then the actual error won't get displayed for why $out wasn't created.

@@ -237,6 +242,19 @@ printWords() {
printf '%s ' "$@"
}

performance-metrics() {
thingname=$1
Copy link
Member

Choose a reason for hiding this comment

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

please indent the contents of this function.

phase_end_time=$(date '+%s')
duration=$((phase_end_time - phase_start_time))
if [ -n "${enablePhaseMetrics:-}" ]; then
echo "time.$curPhase $duration" >> "$NIX_BUILD_TOP/metrics"
Copy link
Member

Choose a reason for hiding this comment

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

Maybe set it to time.$curPhase.user or whichever of user/system/real is wall clock time, to be consistent with the other metrics emitted.

Copy link
Member Author

Choose a reason for hiding this comment

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

I wanted it to be unique since both would show up in the metrics file, it might get confusing which one is the duration between two timestamps and which one is the performance metric real coming from the more detailed function.

@grahamc
Copy link
Member

grahamc commented Aug 29, 2018

  1. this should probably be targeting the staging branch (cc @vcunat)
  2. "This is an optional parameter that most people won't want on most of the time." not sure that is really true, but I think it is smart to leave it off by default for now.
  3. cc @edolstra will Hydra be unhappy about an increase of metrics being created?

@edolstra
Copy link
Member

I think it would be better to implement this as a setup hook, in order not to bloat stdenv and to make it easier to iterate (since a change to the phase metrics hook won't require a rebuild of everything). So users would enable metrics by adding

buildInputs = [ phaseMetrics ];

to their Nix expression, where

phaseMetrics = makeSetupHook ../build-support/setup-hooks/phase-metrics.sh;

in all-packages.nix.

This will still require some hooks to be added to stdenv though, e.g. a prePhaseHook and postPhaseHook called from the phases loop in genericBuild.

@grahamc We definitely can't enable this for most packages since it breaks binary reproducibility.

@@ -1012,7 +1030,7 @@ buildPhase() {
)

echoCmd 'build flags' "${flagsArray[@]}"
make ${makefile:+-f $makefile} "${flagsArray[@]}"
performance-metrics "build" make ${makefile:+-f $makefile} "${flagsArray[@]}"
Copy link
Member

Choose a reason for hiding this comment

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

Is this and the other calls to performance-metrics actually needed given that the duration of the phase is already tracked? The overhead of the phase is probably neglible.

Copy link
Member Author

Choose a reason for hiding this comment

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

This was about collecting the real/user/system times. It's possible the times command might work. I need to play around with it some.

@cleverca22
Copy link
Contributor

a setup-hook does sound nice, but that makes it difficult to gather the system and userspace time, which requires wrapping the phase in the time command, rather then just a simple pre/post command

@edolstra
Copy link
Member

I think it can be done using the times command which is a shell builtin that shows the accumulated system/userspace times for child processes. So you can call times before and after the phase and store the difference.

@Ericson2314
Copy link
Member

Yes hooks would be better, if possible. The stdenv setup script is already far too big.

@vcunat vcunat changed the base branch from master to staging August 30, 2018 10:26
@GrahamcOfBorg
Copy link

Timed out, unknown build status on x86_64-linux (full log)

Attempted: stdenv

Partial log (click to expand)

cannot build derivation '/nix/store/ks0xjq5gfb2gmnzhvy9zh0b02wczd8a8-help2man-1.47.6.drv': 2 dependencies couldn't be built
cannot build derivation '/nix/store/032hwidp9yyymfp9mi69m39fa9hmbsqm-binutils-wrapper-2.30.drv': 4 dependencies couldn't be built
cannot build derivation '/nix/store/hwik710wq9x15jk4dgn1xh24z0v18jlh-diffutils-3.6.drv': 3 dependencies couldn't be built
cannot build derivation '/nix/store/zw9wf254gxcn0a224ksqp1ksnrvshbai-findutils-4.6.0.drv': 2 dependencies couldn't be built
cannot build derivation '/nix/store/g2p3sz1qldqjwawpk3c7mqnjyayk5v9x-libtool-2.4.6.drv': 2 dependencies couldn't be built
cannot build derivation '/nix/store/k438gp6mxbpi1qfdpi995m50addsa8cd-gcc-wrapper-7.3.0.drv': 5 dependencies couldn't be built
cannot build derivation '/nix/store/6zr2zsc2yis0ih9gp30fndxjb72w5pcf-hook.drv': 3 dependencies couldn't be built
cannot build derivation '/nix/store/ri4vrlwdxj4m6134fm69i2jznfqsip6s-patch-2.7.6.drv': 3 dependencies couldn't be built
cannot build derivation '/nix/store/qfzy3bc32gfvhqnbgpri4n16c5zzz99q-stdenv-linux.drv': 23 dependencies couldn't be built
error: build of '/nix/store/qfzy3bc32gfvhqnbgpri4n16c5zzz99q-stdenv-linux.drv' failed

@GrahamcOfBorg
Copy link

Success on aarch64-linux (full log)

Attempted: stdenv

Partial log (click to expand)

shrinking /nix/store/v8xyys6lh1gkr9p27831jlznjb35h6gx-findutils-4.6.0/bin/find
gzipping man pages under /nix/store/v8xyys6lh1gkr9p27831jlznjb35h6gx-findutils-4.6.0/share/man/
strip is /nix/store/8zbl35kgg8v7gircl3pvy9027vslll1q-bootstrap-tools/bin/strip
stripping (with command strip and flags -S) in /nix/store/v8xyys6lh1gkr9p27831jlznjb35h6gx-findutils-4.6.0/libexec  /nix/store/v8xyys6lh1gkr9p27831jlznjb35h6gx-findutils-4.6.0/bin
checking for references to /build in /nix/store/v8xyys6lh1gkr9p27831jlznjb35h6gx-findutils-4.6.0...
shrinking RPATHs of ELF executables and libraries in /nix/store/2f0cganj3gdb064m743hzf8bn92chm8x-findutils-4.6.0-info
strip is /nix/store/8zbl35kgg8v7gircl3pvy9027vslll1q-bootstrap-tools/bin/strip
checking for references to /build in /nix/store/2f0cganj3gdb064m743hzf8bn92chm8x-findutils-4.6.0-info...
building '/nix/store/0hadmsl3b35ds4xv3p435rryz0bmk63h-stdenv-linux.drv'...
/nix/store/42xn0awn7syyq8n05x99mfp8daiccijk-stdenv-linux

@GrahamcOfBorg
Copy link

Timed out, unknown build status on x86_64-darwin (full log)

Attempted: stdenv

Partial log (click to expand)

[ 70%] Building CXX object lib/Target/PowerPC/MCTargetDesc/CMakeFiles/LLVMPowerPCDesc.dir/PPCAsmBackend.cpp.o
[ 70%] Building CXX object lib/Target/PowerPC/MCTargetDesc/CMakeFiles/LLVMPowerPCDesc.dir/PPCMCTargetDesc.cpp.o
[ 70%] Building CXX object lib/Target/PowerPC/MCTargetDesc/CMakeFiles/LLVMPowerPCDesc.dir/PPCMCAsmInfo.cpp.o
[ 70%] Building CXX object lib/Target/PowerPC/MCTargetDesc/CMakeFiles/LLVMPowerPCDesc.dir/PPCMCCodeEmitter.cpp.o
building of '/nix/store/v3rayc1gcm67w3rj0j6x8s6fc05dhbn7-llvm-5.0.2.drv' timed out after 3600 seconds
cannot build derivation '/nix/store/y3caw9880yx2xa4xrsfjrh3j5536fmhg-clang-5.0.2.drv': 1 dependencies couldn't be built
cannot build derivation '/nix/store/930n00mwd76shirp1i2yjkdzyv55ha07-compiler-rt-5.0.2.drv': 1 dependencies couldn't be built
cannot build derivation '/nix/store/d6lmhjmyamcmfq852qnglhs61cgb7m9x-clang-wrapper-5.0.2.drv': 2 dependencies couldn't be built
cannot build derivation '/nix/store/5kj3v6whs8vq27hy92pa0dhkk3w7zdhk-stdenv-darwin.drv': 4 dependencies couldn't be built
error: build of '/nix/store/5kj3v6whs8vq27hy92pa0dhkk3w7zdhk-stdenv-darwin.drv' failed

@oxij
Copy link
Member

oxij commented Sep 5, 2018 via email

@Ericson2314
Copy link
Member

(Which, btw, begs for a nix feature that would allow to nix copy logs together with their derivations.)

Hmm, I wonder if one some level logs should just be another output.

@GrahamcOfBorg
Copy link

Failure on x86_64-darwin (full log)

Attempted: stdenv

Partial log (click to expand)

cannot build derivation '/nix/store/8y8fxkm670nkbjkvy9lad22vjaby3yv4-flex-2.6.4.drv': 7 dependencies couldn't be built
cannot build derivation '/nix/store/i5qbgv1nww19wfp5rk9ys84600h3pj0g-gnutar-1.30.drv': 3 dependencies couldn't be built
cannot build derivation '/nix/store/fv7kgwck5gfsi2bmrpjvmpg1b2bbfmkw-bootstrap_cmds-dev-tools-7.0.drv': 4 dependencies couldn't be built
cannot build derivation '/nix/store/impn03h5g61wr9lbddhqzjw2lz5q3z1j-cctools-binutils-darwin-wrapper.drv': 7 dependencies couldn't be built
cannot build derivation '/nix/store/3vdmv022g01ayx6ckzrqv07xfdjn23an-clang-wrapper-5.0.2.drv': 11 dependencies couldn't be built
cannot build derivation '/nix/store/f7yxr15dxas9dvnp96whcyb9wqi9jinx-libkrb5-1.15.2.drv': 6 dependencies couldn't be built
cannot build derivation '/nix/store/2y6680cym6kghya4yzkfb16p6jh6j65s-curl-7.61.1.drv': 9 dependencies couldn't be built
cannot build derivation '/nix/store/5vjkiagdbb7y5872dqpn9km334yx5b0w-swift-corefoundation.drv': 8 dependencies couldn't be built
cannot build derivation '/nix/store/bxzhlphl36zyirnkjh3lihr32zjcrckc-stdenv-darwin.drv': 42 dependencies couldn't be built
error: build of '/nix/store/bxzhlphl36zyirnkjh3lihr32zjcrckc-stdenv-darwin.drv' failed

@GrahamcOfBorg
Copy link

Success on aarch64-linux (full log)

Attempted: stdenv

Partial log (click to expand)

shrinking /nix/store/125sn8gi3d921cpbg0qbg98m8iz0rfjf-findutils-4.6.0/bin/xargs
shrinking /nix/store/125sn8gi3d921cpbg0qbg98m8iz0rfjf-findutils-4.6.0/bin/find
gzipping man pages under /nix/store/125sn8gi3d921cpbg0qbg98m8iz0rfjf-findutils-4.6.0/share/man/
strip is /nix/store/8zbl35kgg8v7gircl3pvy9027vslll1q-bootstrap-tools/bin/strip
stripping (with command strip and flags -S) in /nix/store/125sn8gi3d921cpbg0qbg98m8iz0rfjf-findutils-4.6.0/libexec  /nix/store/125sn8gi3d921cpbg0qbg98m8iz0rfjf-findutils-4.6.0/bin
checking for references to /build in /nix/store/125sn8gi3d921cpbg0qbg98m8iz0rfjf-findutils-4.6.0...
shrinking RPATHs of ELF executables and libraries in /nix/store/g3p3glf98bvc32pki5ng33a1ikr7jkkw-findutils-4.6.0-info
strip is /nix/store/8zbl35kgg8v7gircl3pvy9027vslll1q-bootstrap-tools/bin/strip
checking for references to /build in /nix/store/g3p3glf98bvc32pki5ng33a1ikr7jkkw-findutils-4.6.0-info...
building '/nix/store/8py47597jwnjlxc360b3d8v0maqgj9a8-stdenv-linux.drv'...

@GrahamcOfBorg
Copy link

Success on x86_64-linux (full log)

Attempted: stdenv

Partial log (click to expand)

make[1]: Leaving directory '/build/patch-2.7.6'
post-installation fixup
shrinking RPATHs of ELF executables and libraries in /nix/store/gqa0hpnpjlx0ipq27hrdd4f52d6laq2s-patch-2.7.6
shrinking /nix/store/gqa0hpnpjlx0ipq27hrdd4f52d6laq2s-patch-2.7.6/bin/patch
gzipping man pages under /nix/store/gqa0hpnpjlx0ipq27hrdd4f52d6laq2s-patch-2.7.6/share/man/
strip is /nix/store/n9acaakxahkv1q3av11l93p7rgd4xqsf-bootstrap-tools/bin/strip
stripping (with command strip and flags -S) in /nix/store/gqa0hpnpjlx0ipq27hrdd4f52d6laq2s-patch-2.7.6/bin
checking for references to /build in /nix/store/gqa0hpnpjlx0ipq27hrdd4f52d6laq2s-patch-2.7.6...
building '/nix/store/kwxdilkbwfln408rgsznsbgi6jishgm2-stdenv-linux.drv'...
/nix/store/w0i392gv0d880d2nzj1v99xal7dl3kzn-stdenv-linux

@ElvishJerricco
Copy link
Contributor

Personally I like the idea of just printing the metrics to the log, since those are persisted, rather than storing them in the output. But that would require some better features in Nix for handling the logs, like copying and GC rooting them.

@GrahamcOfBorg
Copy link

Failure on aarch64-linux (full log)

Attempted: stdenv

Partial log (click to expand)

cannot build derivation '/nix/store/9iv1bxz4ym5p4j4dwggnjshwsckjlqli-help2man-1.47.7.drv': 3 dependencies couldn't be built
cannot build derivation '/nix/store/0j7jdigv6ryc7z3443zrpbc1ka6007f7-binutils-wrapper-2.30.drv': 5 dependencies couldn't be built
cannot build derivation '/nix/store/lr5g74780fq3i4bggwpfqngzb6c42jp5-diffutils-3.6.drv': 3 dependencies couldn't be built
cannot build derivation '/nix/store/4mlwdzz2qyjfv196faysg6g21wbki8fz-findutils-4.6.0.drv': 2 dependencies couldn't be built
cannot build derivation '/nix/store/i53ihy7zkz7wz19nn3pz2zgchf4hhmnk-libtool-2.4.6.drv': 2 dependencies couldn't be built
cannot build derivation '/nix/store/jk25mdhvn82yax1c3dfkh93znxdnblmb-gcc-wrapper-7.3.0.drv': 6 dependencies couldn't be built
cannot build derivation '/nix/store/hnxyd538zxnzfpx4qy6mh2b9zcf813xa-hook.drv': 5 dependencies couldn't be built
cannot build derivation '/nix/store/51in88c04wjajdvl5ikhzfgibygp92pq-patch-2.7.6.drv': 3 dependencies couldn't be built
cannot build derivation '/nix/store/vpmkx8kvddj347n42d8n5nj49z7rkmrq-stdenv-linux.drv': 25 dependencies couldn't be built
error: build of '/nix/store/vpmkx8kvddj347n42d8n5nj49z7rkmrq-stdenv-linux.drv' failed

@GrahamcOfBorg
Copy link

Failure on x86_64-darwin (full log)

Attempted: stdenv

Partial log (click to expand)

cannot build derivation '/nix/store/cdhk0cpvh82cmi20bzy1fj52lg9l2h11-flex-2.6.4.drv': 7 dependencies couldn't be built
cannot build derivation '/nix/store/0lisr4jzafa632g3n1m07h3pqhq5066k-gnutar-1.30.drv': 3 dependencies couldn't be built
cannot build derivation '/nix/store/qdng8r817a23ghgc4xp9kf6m428lkr6n-bootstrap_cmds-dev-tools-7.0.drv': 4 dependencies couldn't be built
cannot build derivation '/nix/store/g7xpi6y5l59x5h2mdqq7qi48sks2pvzq-cctools-binutils-darwin-wrapper.drv': 7 dependencies couldn't be built
cannot build derivation '/nix/store/bv84xjcxf4ijlsmrikndqgg7l50i0qlv-clang-wrapper-5.0.2.drv': 11 dependencies couldn't be built
cannot build derivation '/nix/store/2syhhva2zxf58zrc8qkcnaspfnxnb4ql-libkrb5-1.15.2.drv': 6 dependencies couldn't be built
cannot build derivation '/nix/store/ljm6qpifh6w5nrp87bqhjf7hrzzcjv4c-curl-7.61.1.drv': 9 dependencies couldn't be built
cannot build derivation '/nix/store/xff93yahgi1dgnra6dz2v30yays2ljk8-swift-corefoundation.drv': 8 dependencies couldn't be built
cannot build derivation '/nix/store/hwhsr3mdyrccf6mbs5k7yd46z5bmya9p-stdenv-darwin.drv': 42 dependencies couldn't be built
error: build of '/nix/store/hwhsr3mdyrccf6mbs5k7yd46z5bmya9p-stdenv-darwin.drv' failed

@disassembler disassembler changed the title Measure phase metrics in stdenv optionally Measure phase metrics in stdenv Oct 27, 2018
@disassembler
Copy link
Member Author

disassembler commented Oct 27, 2018

Updated this to output to NIX_LOG_FD and not add to $out. It's writing metadata with @nix prefix so nix can parse it and then output as a struct to hydra.

@GrahamcOfBorg
Copy link

Failure on x86_64-linux (full log)

Attempted: stdenv

Partial log (click to expand)

cannot build derivation '/nix/store/b8afwh2gws77dkpi7hr352xbilnvs9s7-help2man-1.47.7.drv': 3 dependencies couldn't be built
cannot build derivation '/nix/store/asks21wjaasa0jm60smgvjx6wz6w1cnc-binutils-wrapper-2.30.drv': 5 dependencies couldn't be built
cannot build derivation '/nix/store/23sx1k31m1ydz6b5hnm68hfwf95nr2is-diffutils-3.6.drv': 3 dependencies couldn't be built
cannot build derivation '/nix/store/88lv41hwxwkq7k7naash8mxw2maislf7-findutils-4.6.0.drv': 2 dependencies couldn't be built
cannot build derivation '/nix/store/hjz82fbjmrb3521lwsa1frpzgqc2zrll-libtool-2.4.6.drv': 2 dependencies couldn't be built
cannot build derivation '/nix/store/gw7lkkikn7v2nwqfdl39smw2fyxsggha-gcc-wrapper-7.3.0.drv': 6 dependencies couldn't be built
cannot build derivation '/nix/store/fi498bbra092c9rrjhgyd9m4f1v4qbbk-hook.drv': 5 dependencies couldn't be built
cannot build derivation '/nix/store/y0cpj3psxizy8anxmjvqchymc7mf0ilp-patch-2.7.6.drv': 3 dependencies couldn't be built
cannot build derivation '/nix/store/1h94lccw3i8638rshhxdjrg4khnx9lb2-stdenv-linux.drv': 23 dependencies couldn't be built
error: build of '/nix/store/1h94lccw3i8638rshhxdjrg4khnx9lb2-stdenv-linux.drv' failed

@ElvishJerricco
Copy link
Contributor

@edolstra What do you think about enabling this for all stdenv, but not storing metrics in the outputs and only printing them to the log? The log would not be binary reproducible, but the build outputs still would be.

@oxij
Copy link
Member

oxij commented Oct 30, 2018 via email

@mmahut
Copy link
Member

mmahut commented Aug 19, 2019

Are there any updates on this pull request, please?

@stale
Copy link

stale bot commented Jun 1, 2020

Thank you for your contributions.
This has been automatically marked as stale because it has had no activity for 180 days.
If this is still important to you, we ask that you leave a comment below. Your comment can be as simple as "still important to me". This lets people see that at least one person still cares about this. Someone will have to do this at most twice a year if there is no other activity.
Here are suggestions that might help resolve this more quickly:

  1. Search for maintainers and people that previously touched the
    related code and @ mention them in a comment.
  2. Ask on the NixOS Discourse. 3. Ask on the #nixos channel on
    irc.freenode.net.

@stale stale bot added the 2.status: stale https://github.com/NixOS/nixpkgs/blob/master/.github/STALE-BOT.md label Jun 1, 2020
@stale stale bot removed the 2.status: stale https://github.com/NixOS/nixpkgs/blob/master/.github/STALE-BOT.md label Oct 3, 2020
@ryantm ryantm removed their request for review December 8, 2020 15:08
@stale
Copy link

stale bot commented Jun 6, 2021

I marked this as stale due to inactivity. → More info

@stale stale bot added the 2.status: stale https://github.com/NixOS/nixpkgs/blob/master/.github/STALE-BOT.md label Jun 6, 2021
@Artturin
Copy link
Member

similar thing done in #166827 but it prints them to the log instead of to a file

@Artturin Artturin closed this May 14, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet