NixOS / nix

Nix, the purely functional package manager
https://nixos.org/
GNU Lesser General Public License v2.1
12.07k stars 1.47k forks source link

Consistent but random "signal 6 (Aborted)" errors with remote builder on version 2.4 #5270

Open jasoncarr0 opened 2 years ago

jasoncarr0 commented 2 years ago

Describe the bug

Several packages appear to be failing with a consistent error when using a remote builder: /nix/store/gpk9ljdjhnymw4gkxf46db2rhfc09gad-sshd.conf-validated.drv' failed due to signal 6 (Aborted)

The only workaround is to manually disable the remote builder before building one of these packages, such as by modifying /etc/nix/machines or changing the system config (which is hard to do when you can't build your system due to this issue!). It does not appear to be isolated and has appeared simultaneously for multiple packages after upgrading to a recent nixpkgs.

Other packages I've seen it on: (most notably steam doesn't require any special configuration or a system module like the others) /nix/store/ma1df4gvcc5p53mh73crlb1qkfsjpwpx-font-bh-100dpi-1.0.3.drv /nix/store/njf5cp889cvbh56y6fr9zcdsk3cr3v0k-steam-original-1.0.0.70.drv

These packages fail 100% of the time, at an apparently random point in the build

Steps To Reproduce

  1. Enable a remote builder, I have:
    nix.buildMachines = [ {
    hostName = "example.lan";
    system = "x86_64-linux";
    maxJobs = 1;
    speedFactor = 2;
    supportedFeatures = [ "nixos-test" "benchmark" "big-parallel" "kvm" ];
    mandatoryFeatures = [ ];
    }] ;
  2. Build one of a few packages, such as steam, most easily, or also enabling fonts or sshd
  3. They should error at a random time with the above error

Expected behavior

The packages build successfully, such as via being built on the local machine.

nix-env --version output

Full nix-info as I started this at nixpkgs

Local machine:

$ nix-shell -p nix-info --run "nix-info -m"
 - system: `"x86_64-linux"`
 - host os: `Linux 5.12.19-zen2, NixOS, 21.11pre304626.8ecc61c91a5 (Porcupine)`
 - multi-user?: `no`
 - sandbox: `yes`
 - version: `nix-env (Nix) 2.3.14`
 - channels(root): `"nixos-21.11pre316472.47eaf6727bd, unstable"`
 - channels(jason): `""`
 - nixpkgs: `/nix/var/nix/profiles/per-user/root/channels/nixos`

Also, remote builder:

$ nix-shell -p nix-info --run "nix-info -m"
  - system: `"x86_64-linux"`
 - host os: `Linux 5.10.52, NixOS, 21.11pre305786.aaf9676fbb7 (Porcupine)`
 - multi-user?: `yes`
 - sandbox: `yes`
 - version: `nix-env (Nix) 2.4pre20210707_02dd6bb`
 - channels(root): `"nixos-21.11pre305786.aaf9676fbb7, nixpkgs-21.05.1987.16bf3980bfa, unstable-21.11pre304626.8ecc61c91a5"`
 - nixpkgs: `/nix/var/nix/profiles/per-user/root/channels/nixos`

Additional context

Add any other context about the problem here.

dnr commented 2 years ago

I hit this yesterday. It was happening reliably when using Nix 2.3.16 on the local side and Nix 2.4 on the remote side (both on aarch64). Downgrading the remote to 2.3.16 fixed it completely.

I got core dumps and was able to get a backtrace with gdb. I can attach some if anyone thinks it would be helpful, but I suspect just the 2.3.16→2.4 combination should be enough for anyone to reproduce it.

mweinelt commented 2 years ago

I'm hitting this consistently with home-assistant, which has a huge number of leaf packages. I saw this happening as soon as I upgraded my client to nix 2.4, when the remote builder was still 2.3.16. I upgraded the remote builder to 2.4 in the meantime, but builds are still failing with SIGABRT.

zopieux commented 2 years ago

Got hit by this too, reproducibly. Remote builder is 2.4, local builder is 2.3.16. Using 2.3.16 on the remote fixes it.

mweinelt commented 2 years ago

Probably related to #4664.

nixos-discourse commented 2 years ago

This issue has been mentioned on NixOS Discourse. There might be relevant details there:

https://discourse.nixos.org/t/remote-building-experienence-massively-degraded-since-2-3-months/16950/1

mweinelt commented 2 years ago

Can reproducibly see SIGABRT on my remote builder using nix2.6pre20211217 when building home-assistanton staging.

Config

{ lib, pkgs, ... }:
{
  nix = {
    package = pkgs.nixUnstable.overrideAttrs (oldAtts: rec {
      doInstallCheck = false;
      separateDebugInfo = false;
      dontStrip = true;
      postPatch = ''
        substituteInPlace Makefile \
          --replace "OPTIMIZE = 1" "OPTIMIZE = 0"
      '';
    });
    nrBuildUsers = 128;
  };
  systemd.services.nix-daemon.serviceConfig.LimitNOFILE = lib.mkForce 131072;
}

Backtrace

Program terminated with signal SIGABRT, Aborted.
#0  0x00007fb146673baa in raise () from /nix/store/wl60dr9p15rwf53gxz61ijgisc1zdjc7-glibc-2.33-59/lib/libc.so.6
(gdb) bt full
#0  0x00007fb146673baa in raise () from /nix/store/wl60dr9p15rwf53gxz61ijgisc1zdjc7-glibc-2.33-59/lib/libc.so.6
No symbol table info available.
#1  0x00007fb14665e523 in abort () from /nix/store/wl60dr9p15rwf53gxz61ijgisc1zdjc7-glibc-2.33-59/lib/libc.so.6
No symbol table info available.
#2  0x00007fb1469fc7ec in ?? () from /nix/store/b0p7nvkwxr65q016zsqicrd4bcg5bv1s-gcc-10.3.0-lib/lib/libstdc++.so.6
No symbol table info available.
#3  0x00007fb146a077c6 in ?? () from /nix/store/b0p7nvkwxr65q016zsqicrd4bcg5bv1s-gcc-10.3.0-lib/lib/libstdc++.so.6
No symbol table info available.
#4  0x00007fb146a068a9 in ?? () from /nix/store/b0p7nvkwxr65q016zsqicrd4bcg5bv1s-gcc-10.3.0-lib/lib/libstdc++.so.6
No symbol table info available.
#5  0x00007fb146a071e1 in __gxx_personality_v0 () from /nix/store/b0p7nvkwxr65q016zsqicrd4bcg5bv1s-gcc-10.3.0-lib/lib/libstdc++.so.6
No symbol table info available.
#6  0x00007fb14680fda3 in _Unwind_RaiseException_Phase2 () from /nix/store/wl60dr9p15rwf53gxz61ijgisc1zdjc7-glibc-2.33-59/lib/libgcc_s.so.1
No symbol table info available.
#7  0x00007fb146810625 in _Unwind_Resume () from /nix/store/wl60dr9p15rwf53gxz61ijgisc1zdjc7-glibc-2.33-59/lib/libgcc_s.so.1
No symbol table info available.
#8  0x00007fb147059c5b in nix::ignoreException () at src/libutil/util.cc:1358
        e = @0x564436a1e570: <incomplete type>
#9  0x00007fb1477e3626 in nix::LocalDerivationGoal::~LocalDerivationGoal (this=0x564436952a00, __in_chrg=<optimized out>) at src/libstore/build/local-derivation-goal.cc:102
No locals.
#10 0x00007fb14784c649 in __gnu_cxx::new_allocator<nix::LocalDerivationGoal>::destroy<nix::LocalDerivationGoal> (this=0x564436952a00, __p=0x564436952a00)
    at /nix/store/v819nrv8d33ns36gm4v9vqydq1v95axi-gcc-10.3.0/include/c++/10.3.0/ext/new_allocator.h:156
No locals.
#11 0x00007fb14784c56d in std::allocator_traits<std::allocator<nix::LocalDerivationGoal> >::destroy<nix::LocalDerivationGoal> (__a=..., __p=0x564436952a00)
    at /nix/store/v819nrv8d33ns36gm4v9vqydq1v95axi-gcc-10.3.0/include/c++/10.3.0/bits/alloc_traits.h:531
No locals.
#12 0x00007fb14784c21d in std::_Sp_counted_ptr_inplace<nix::LocalDerivationGoal, std::allocator<nix::LocalDerivationGoal>, (__gnu_cxx::_Lock_policy)2>::_M_dispose (
    this=0x5644369529f0) at /nix/store/v819nrv8d33ns36gm4v9vqydq1v95axi-gcc-10.3.0/include/c++/10.3.0/bits/shared_ptr_base.h:560
No locals.
#13 0x00005644346949ab in std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release (this=0x5644369529f0)
    at /nix/store/v819nrv8d33ns36gm4v9vqydq1v95axi-gcc-10.3.0/include/c++/10.3.0/bits/shared_ptr_base.h:158
No locals.
#14 0x0000564434690f67 in std::__shared_count<(__gnu_cxx::_Lock_policy)2>::~__shared_count (this=0x56443694e578, __in_chrg=<optimized out>)
    at /nix/store/v819nrv8d33ns36gm4v9vqydq1v95axi-gcc-10.3.0/include/c++/10.3.0/bits/shared_ptr_base.h:733
No locals.
#15 0x00007fb1477b2fc6 in std::__shared_ptr<nix::Goal, (__gnu_cxx::_Lock_policy)2>::~__shared_ptr (this=0x56443694e570, __in_chrg=<optimized out>)
    at /nix/store/v819nrv8d33ns36gm4v9vqydq1v95axi-gcc-10.3.0/include/c++/10.3.0/bits/shared_ptr_base.h:1183
No locals.
#16 0x00007fb1477b2fe2 in std::shared_ptr<nix::Goal>::~shared_ptr (this=0x56443694e570, __in_chrg=<optimized out>)
    at /nix/store/v819nrv8d33ns36gm4v9vqydq1v95axi-gcc-10.3.0/include/c++/10.3.0/bits/shared_ptr.h:121
No locals.
#17 0x00007fb1477ca6b4 in __gnu_cxx::new_allocator<std::_Rb_tree_node<std::shared_ptr<nix::Goal> > >::destroy<std::shared_ptr<nix::Goal> > (this=0x7ffeadcc3510, __p=0x56443694e570)
    at /nix/store/v819nrv8d33ns36gm4v9vqydq1v95axi-gcc-10.3.0/include/c++/10.3.0/ext/new_allocator.h:156
No locals.
#18 0x00007fb1477c8781 in std::allocator_traits<std::allocator<std::_Rb_tree_node<std::shared_ptr<nix::Goal> > > >::destroy<std::shared_ptr<nix::Goal> > (__a=..., 
    __p=0x56443694e570) at /nix/store/v819nrv8d33ns36gm4v9vqydq1v95axi-gcc-10.3.0/include/c++/10.3.0/bits/alloc_traits.h:531
--Type <RET> for more, q to quit, c to continue without paging--c
No locals.
#19 0x00007fb1477c4be9 in std::_Rb_tree<std::shared_ptr<nix::Goal>, std::shared_ptr<nix::Goal>, std::_Identity<std::shared_ptr<nix::Goal> >, nix::CompareGoalPtrs, std::allocator<std::shared_ptr<nix::Goal> > >::_M_destroy_node (this=0x7ffeadcc3510, __p=0x56443694e550) at /nix/store/v819nrv8d33ns36gm4v9vqydq1v95axi-gcc-10.3.0/include/c++/10.3.0/bits/stl_tree.h:646
No locals.
#20 0x00007fb1477c00ad in std::_Rb_tree<std::shared_ptr<nix::Goal>, std::shared_ptr<nix::Goal>, std::_Identity<std::shared_ptr<nix::Goal> >, nix::CompareGoalPtrs, std::allocator<std::shared_ptr<nix::Goal> > >::_M_drop_node (this=0x7ffeadcc3510, __p=0x56443694e550) at /nix/store/v819nrv8d33ns36gm4v9vqydq1v95axi-gcc-10.3.0/include/c++/10.3.0/bits/stl_tree.h:654
No locals.
#21 0x00007fb1477bac0e in std::_Rb_tree<std::shared_ptr<nix::Goal>, std::shared_ptr<nix::Goal>, std::_Identity<std::shared_ptr<nix::Goal> >, nix::CompareGoalPtrs, std::allocator<std::shared_ptr<nix::Goal> > >::_M_erase (this=0x7ffeadcc3510, __x=0x56443694e550) at /nix/store/v819nrv8d33ns36gm4v9vqydq1v95axi-gcc-10.3.0/include/c++/10.3.0/bits/stl_tree.h:1921
        __y = 0x0
#22 0x00007fb1477d8f1c in std::_Rb_tree<std::shared_ptr<nix::Goal>, std::shared_ptr<nix::Goal>, std::_Identity<std::shared_ptr<nix::Goal> >, nix::CompareGoalPtrs, std::allocator<std::shared_ptr<nix::Goal> > >::clear (this=0x7ffeadcc3510) at /nix/store/v819nrv8d33ns36gm4v9vqydq1v95axi-gcc-10.3.0/include/c++/10.3.0/bits/stl_tree.h:1261
No locals.
#23 0x00007fb1477d8134 in std::set<std::shared_ptr<nix::Goal>, nix::CompareGoalPtrs, std::allocator<std::shared_ptr<nix::Goal> > >::clear (this=0x7ffeadcc3510) at /nix/store/v819nrv8d33ns36gm4v9vqydq1v95axi-gcc-10.3.0/include/c++/10.3.0/bits/stl_set.h:734
No locals.
#24 0x00007fb147835664 in nix::Worker::~Worker (this=0x7ffeadcc3510, __in_chrg=<optimized out>) at src/libstore/build/worker.cc:35
        __PRETTY_FUNCTION__ = <optimized out>
#25 0x00007fb1477d6260 in nix::Store::buildDerivation (this=0x56443690f310, drvPath=..., drv=..., buildMode=nix::bmNormal) at src/libstore/build/entry-points.cc:53
        worker = {topGoals = std::set with 1 element = {[0] = std::shared_ptr<nix::Goal> (expired, weak count 4) = {get() = 0x564436952a00}}, awake = std::set with 0 elements, wantingToBuild = std::set with 0 elements, children = std::__cxx11::list = {[0] = {goal = std::weak_ptr<nix::Goal> (expired, weak count 4) = {get() = 0x564436952a00}, goal2 = 0x564436952a00, fds = std::set with 1 element = {[0] = 15}, respectTimeouts = true, inBuildSlot = true, lastOutput = {__d = {__r = 3012084626850545}}, timeStarted = {__d = {__r = 3012079715528929}}}}, nrLocalBuilds = 1, derivationGoals = std::map with 1 element = {[{baseName = "zxrxw2mkih70w6v1cniqg9yib11vpipl-tcpdump-4.99.1.drv", static HashLen = 32, static dummy = {baseName = 'f' <repeats 32 times>, "-x", static HashLen = 32, static dummy = <same as static member of an already seen type>}}] = std::weak_ptr<nix::DerivationGoal> (expired, weak count 4) = {get() = 0x564436952a00}}, substitutionGoals = std::map with 0 elements, drvOutputSubstitutionGoals = std::map with 0 elements, waitingForAnyGoal = std::set with 0 elements, waitingForAWhile = std::set with 0 elements, lastWokenUp = {__d = {__r = -9223372036854775808}}, pathContentsGoodCache = std::map with 0 elements, act = {logger = @0x564436911d80, id = 7666525213294593}, actDerivations = {logger = @0x564436911d80, id = 7666525213294594}, actSubstitutions = {logger = @0x564436911d80, id = 7666525213294595}, permanentFailure = false, timedOut = false, hashMismatch = false, checkMismatch = false, store = @0x56443690f310, evalStore = @0x56443690f310, hook = std::unique_ptr<nix::HookInstance> = {get() = 0x0}, expectedBuilds = 1, doneBuilds = 0, failedBuilds = 0, runningBuilds = 1, expectedSubstitutions = 0, doneSubstitutions = 0, failedSubstitutions = 0, runningSubstitutions = 0, expectedDownloadSize = 0, doneDownloadSize = 0, expectedNarSize = 0, doneNarSize = 0, tryBuildHook = true}
        goal = std::shared_ptr<nix::DerivationGoal> (expired, weak count 4) = {get() = 0x564436952a00}
        result = {status = nix::BuildResult::MiscFailure, errorMsg = "", timesBuilt = 0, isNonDeterministic = false, builtOutputs = std::map with 0 elements, startTime = 0, stopTime = 0}
        staticDrvOutputs = std::map with 140731814262944 elements<error reading variable: Cannot access memory at address 0x11>
        outputHashes = std::map with 1 element = {["\260\000\000\000\000\000\000\000A\000\000\000\000\000\000\000\220\267\220\066DV\000\000\300\343\224\066DV\000\000.0.c\000\071yi!\000\000\000\000\000\000\000\300c\241\066DV\000\000`\032\177F\261\177\000\000@\000\000\000\000\000\000\000 \000\000\000\000\000\000\000path-info-cache-size\000ak6a\000\000\000\000\000\000\000\001\000\000\000\261\177\000\000\060Đ6DV\000\000\020)\225\066DV\000\000P(\225\066DV\000\000 \346\224\066DV\000\000\a\000\000\000\000\000\000\000trusted\000\065l84wlpk\000\066\225\066DV\000\000p8\225\066DV\000\000`\000\000\000\000\000\000\000"...] = {static maxHashSize = 64, hashSize = 2334675641770338675, hash = "the in-memory store path information cache\n", '\000' <repeats 13 times>, "\240\036\225\066DV\000", type = 47, static dummy = {static maxHashSize = 64, hashSize = 32, hash = '\000' <repeats 63 times>, type = nix::htSHA256, static dummy = <same as static member of an already seen type>}}}
#26 0x00007fb14785e45e in nix::daemon::performOp (logger=0x564436911d80, store=..., trusted=nix::daemon::Trusted, recursive=nix::daemon::NotRecursive, clientVersion=288, from=..., to=..., op=36) at src/libstore/daemon.cc:592
        drvPath = {baseName = "zxrxw2mkih70w6v1cniqg9yib11vpipl-tcpdump-4.99.1.drv", static HashLen = 32, static dummy = {baseName = 'f' <repeats 32 times>, "-x", static HashLen = 32, static dummy = <same as static member of an already seen type>}}
        drv = {_vptr.BasicDerivation = 0x564434a40a60 <vtable for nix::BasicDerivation+16>, outputs = std::map with 1 element = {["out"] = {output = std::variant<nix::DerivationOutputInputAddressed, nix::DerivationOutputCAFixed, nix::DerivationOutputCAFloating, nix::DerivationOutputDeferred> [index 0] = {{path = {baseName = "qxmii38ifg5y8y52wzjdwwsg7l22bjba-tcpdump-4.99.1", static HashLen = 32, static dummy = {baseName = 'f' <repeats 32 times>, "-x", static HashLen = 32, static dummy = <same as static member of an already seen type>}}}}}}, inputSrcs = std::set with 50 elements = {[0] = {baseName = "1i5y55x4b4m9qkx5dqbmr1r6bvrqbanw-multiple-outputs.sh", static HashLen = 32, static dummy = {baseName = 'f' <repeats 32 times>, "-x", static HashLen = 32, static dummy = <same as static member of an already seen type>}}, [1] = {baseName = "206g2lch8ppnihbwzxx6i9pcfz0659d0-binutils-wrapper-2.35.2", static HashLen = 32, static dummy = {baseName = 'f' <repeats 32 times>, "-x", static HashLen = 32, static dummy = <same as static member of an already seen type>}}, [2] = {baseName = "2igzrq29jv3wdy4w822r6kwsbr2akc77-libpcap-1.10.1", static HashLen = 32, static dummy = {baseName = 'f' <repeats 32 times>, "-x", static HashLen = 32, static dummy = <same as static member of an already seen type>}}, [3] = {baseName = "2kh3c4v2vf6d6xg6c9n8zvfpwf3zzwca-bash-5.1-p12", static HashLen = 32, static dummy = {baseName = 'f' <repeats 32 times>, "-x", static HashLen = 32, static dummy = <same as static member of an already seen type>}}, [4] = {baseName = "3h2r8avmx3ak65yhg64w8q2md5674x0l-pcre-8.45", static HashLen = 32, static dummy = {baseName = 'f' <repeats 32 times>, "-x", static HashLen = 32, static dummy = <same as static member of an already seen type>}}, [5] = {baseName = "3rd24wjad31avvylb8z4kph632gjbrnq-libidn2-2.3.2", static HashLen = 32, static dummy = {baseName = 'f' <repeats 32 times>, "-x", static HashLen = 32, static dummy = <same as static member of an already seen type>}}, [6] = {baseName = "4gjp80mxi27jzsg5s1drcvfzx6vimqf5-expand-response-params", static HashLen = 32, static dummy = {baseName = 'f' <repeats 32 times>, "-x", static HashLen = 32, static dummy = <same as static member of an already seen type>}}, [7] = {baseName = "59jmzisg8fkm9c125fw384dqq1np602l-move-docs.sh", static HashLen = 32, static dummy = {baseName = 'f' <repeats 32 times>, "-x", static HashLen = 32, static dummy = <same as static member of an already seen type>}}, [8] = {baseName = "6jd4pwngw10mbqzfxcwgjp6a2a658w5j-attr-2.5.1", static HashLen = 32, static dummy = {baseName = 'f' <repeats 32 times>, "-x", static HashLen = 32, static dummy = <same as static member of an already seen type>}}, [9] = {baseName = "81iswlf4b34v77hs4r9z3sc0j93wa31f-gzip-1.11", static HashLen = 32, static dummy = {baseName = 'f' <repeats 32 times>, "-x", static HashLen = 32, static dummy = <same as static member of an already seen type>}}, [10] = {baseName = "8zxndz5ag0p6s526c2xyllhk1nrn4c3i-audit-tmpdir.sh", static HashLen = 32, static dummy = {baseName = 'f' <repeats 32 times>, "-x", static HashLen = 32, static dummy = <same as static member of an already seen type>}}, [11] = {baseName = "93z3gj6kl0qvdm1mzwb5vaxlz7i481lz-glibc-2.33-62-dev", static HashLen = 32, static dummy = {baseName = 'f' <repeats 32 times>, "-x", static HashLen = 32, static dummy = <same as static member of an already seen type>}}, [12] = {baseName = "9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh", static HashLen = 32, static dummy = {baseName = 'f' <repeats 32 times>, "-x", static HashLen = 32, static dummy = <same as static member of an already seen type>}}, [13] = {baseName = "9m0k71s1ddhsp5l84wlpk9yhcmh5n1wx-gcc-10.3.0", static HashLen = 32, static dummy = {baseName = 'f' <repeats 32 times>, "-x", static HashLen = 32, static dummy = <same as static member of an already seen type>}}, [14] = {baseName = "a362w9x73720j18cn0g7451a2jfwvjbd-binutils-2.35.2", static HashLen = 32, static dummy = {baseName = 'f' <repeats 32 times>, "-x", static HashLen = 32, static dummy = <same as static member of an already seen type>}}, [15] = {baseName = "a919zd6dkfc77h0icsj54zmvkp96hp3i-zlib-1.2.11", static HashLen = 32, static dummy = {baseName = 'f' <repeats 32 times>, "-x", static HashLen = 32, static dummy = <same as static member of an already seen type>}}, [16] = {baseName = "bkxq1nfi6grmww5756ynr1aph7w04lkk-strip.sh", static HashLen = 32, static dummy = {baseName = 'f' <repeats 32 times>, "-x", static HashLen = 32, static dummy = <same as static member of an already seen type>}}, [17] = {baseName = "bnj8d7mvbkg3vdb07yz74yhl3g107qq5-patch-shebangs.sh", static HashLen = 32, static dummy = {baseName = 'f' <repeats 32 times>, "-x", static HashLen = 32, static dummy = <same as static member of an already seen type>}}, [18] = {baseName = "c8n9kcdddp9np665xz6ri61b383nxvz8-move-systemd-user-units.sh", static HashLen = 32, static dummy = {baseName = 'f' <repeats 32 times>, "-x", static HashLen = 32, static dummy = <same as static member of an already seen type>}}, [19] = {baseName = "ccln76sji130bi4vwh7a6rcjr6gcwrc1-patchelf-0.14.3", static HashLen = 32, static dummy = {baseName = 'f' <repeats 32 times>, "-x", static HashLen = 32, static dummy = <same as static member of an already seen type>}}, [20] = {baseName = "cickvswrvann041nqxb0rxilc46svw1n-prune-libtool-files.sh", static HashLen = 32, static dummy = {baseName = 'f' <repeats 32 times>, "-x", static HashLen = 32, static dummy = <same as static member of an already seen type>}}, [21] = {baseName = "d5lv5c70m4nysd7k8k6b3knc6dvcgb2p-gnutar-1.34", static HashLen = 32, static dummy = {baseName = 'f' <repeats 32 times>, "-x", static HashLen = 32, static dummy = <same as static member of an already seen type>}}, [22] = {baseName = "fyaryjvghbkpfnsyw97hb3lyb37s1pd6-move-lib64.sh", static HashLen = 32, static dummy = {baseName = 'f' <repeats 32 times>, "-x", static HashLen = 32, static dummy = <same as static member of an already seen type>}}, [23] = {baseName = "gai08ry1zhyj2msi2pmrm84g90asa5br-tcpdump-4.99.1.tar.gz", static HashLen = 32, static dummy = {baseName = 'f' <repeats 32 times>, "-x", static HashLen = 32, static dummy = <same as static member of an already seen type>}}, [24] = {baseName = "gwh5l6rpnhpvr73ydfxlf00y8n504w00-linux-headers-5.15.5", static HashLen = 32, static dummy = {baseName = 'f' <repeats 32 times>, "-x", static HashLen = 32, static dummy = <same as static member of an already seen type>}}, [25] = {baseName = "kd4xwxjpjxi71jkm6ka0np72if9rm3y0-move-sbin.sh", static HashLen = 32, static dummy = {baseName = 'f' <repeats 32 times>, "-x", static HashLen = 32, static dummy = <same as static member of an already seen type>}}, [26] = {baseName = "kxw6q8v6isaqjm702d71n2421cxamq68-make-symlinks-relative.sh", static HashLen = 32, static dummy = {baseName = 'f' <repeats 32 times>, "-x", static HashLen = 32, static dummy = <same as static member of an already seen type>}}, [27] = {baseName = "m54bmrhj6fqz8nds5zcj97w9s9bckc9v-compress-man-pages.sh", static HashLen = 32, static dummy = {baseName = 'f' <repeats 32 times>, "-x", static HashLen = 32, static dummy = <same as static member of an already seen type>}}, [28] = {baseName = "mx2yja7sqifrvl4vf8x1knnq863cwb0n-gnumake-4.3", static HashLen = 32, static dummy = {baseName = 'f' <repeats 32 times>, "-x", static HashLen = 32, static dummy = <same as static member of an already seen type>}}, [29] = {baseName = "my7yzg6d9ikk7ipsk2af6mn9qn786fkj-bzip2-1.0.6.0.2-bin", static HashLen = 32, static dummy = {baseName = 'f' <repeats 32 times>, "-x", static HashLen = 32, static dummy = <same as static member of an already seen type>}}, [30] = {baseName = "n3n57q71hpkjjvbixqwry51v6gm7ib86-ed-1.17", static HashLen = 32, static dummy = {baseName = 'f' <repeats 32 times>, "-x", static HashLen = 32, static dummy = <same as static member of an already seen type>}}, [31] = {baseName = "ngg1cv31c8c7bcm2n8ww4g06nq7s4zhm-set-source-date-epoch-to-latest.sh", static HashLen = 32, static dummy = {baseName = 'f' <repeats 32 times>, "-x", static HashLen = 32, static dummy = <same as static member of an already seen type>}}, [32] = {baseName = "pcqj12x7hwc2kciyc0yj6qw04ndx4rfp-libunistring-0.9.10", static HashLen = 32, static dummy = {baseName = 'f' <repeats 32 times>, "-x", static HashLen = 32, static dummy = <same as static member of an already seen type>}}, [33] = {baseName = "qpi7a42z62l949g20c19m9a9xdziai1k-xz-5.2.5-bin", static HashLen = 32, static dummy = {baseName = 'f' <repeats 32 times>, "-x", static HashLen = 32, static dummy = <same as static member of an already seen type>}}, [34] = {baseName = "r05l13kmv1izx0s650mc9s3nx517pj90-bzip2-1.0.6.0.2", static HashLen = 32, static dummy = {baseName = 'f' <repeats 32 times>, "-x", static HashLen = 32, static dummy = <same as static member of an already seen type>}}, [35] = {baseName = "r0h3ic7lk3xbhyz9jqf3x6gcrlpy6ir1-xz-5.2.5", static HashLen = 32, static dummy = {baseName = 'f' <repeats 32 times>, "-x", static HashLen = 32, static dummy = <same as static member of an already seen type>}}, [36] = {baseName = "r2ag988vchnfmz5zq8wdssyw6w6vv2dy-glibc-2.33-62-bin", static HashLen = 32, static dummy = {baseName = 'f' <repeats 32 times>, "-x", static HashLen = 32, static dummy = <same as static member of an already seen type>}}, [37] = {baseName = "rg7bpxyqipjgxfc6q5h7p1yrnsgaypsk-gnused-4.8", static HashLen = 32, static dummy = {baseName = 'f' <repeats 32 times>, "-x", static HashLen = 32, static dummy = <same as static member of an already seen type>}}, [38] = {baseName = "s6sb3m2312hjw78zg5gyjpky5w0z1cgw-gnugrep-3.7", static HashLen = 32, static dummy = {baseName = 'f' <repeats 32 times>, "-x", static HashLen = 32, static dummy = <same as static member of an already seen type>}}, [39] = {baseName = "s99ykmdxh7cn5vx76vyh9y9k08rl79na-acl-2.3.1", static HashLen = 32, static dummy = {baseName = 'f' <repeats 32 times>, "-x", static HashLen = 32, static dummy = <same as static member of an already seen type>}}, [40] = {baseName = "saw6nkqqqfx5xm1h5cpk7gxnxmw9wk47-glibc-2.33-62", static HashLen = 32, static dummy = {baseName = 'f' <repeats 32 times>, "-x", static HashLen = 32, static dummy = <same as static member of an already seen type>}}, [41] = {baseName = "v8gqjv6a5dzp26dzg6qkhj6v79d4mv84-gawk-5.1.1", static HashLen = 32, static dummy = {baseName = 'f' <repeats 32 times>, "-x", static HashLen = 32, static dummy = <same as static member of an already seen type>}}, [42] = {baseName = "vizjhz04x6xl57x2vrpqa52j8q6rkjfh-coreutils-9.0", static HashLen = 32, static dummy = {baseName = 'f' <repeats 32 times>, "-x", static HashLen = 32, static dummy = <same as static member of an already seen type>}}, [43] = {baseName = "wa9x5983qing9gifsaf0iln4fcjxssxs-diffutils-3.8", static HashLen = 32, static dummy = {baseName = 'f' <repeats 32 times>, "-x", static HashLen = 32, static dummy = <same as static member of an already seen type>}}, [44] = {baseName = "wlwcf1nw2b21m4gghj70hbg1v7x53ld8-reproducible-builds.sh", static HashLen = 32, static dummy = {baseName = 'f' <repeats 32 times>, "-x", static HashLen = 32, static dummy = <same as static member of an already seen type>}}, [45] = {baseName = "x17b1wq871r4ycrxyy1n85ja09dxq3ih-gcc-10.3.0-lib", static HashLen = 32, static dummy = {baseName = 'f' <repeats 32 times>, "-x", static HashLen = 32, static dummy = <same as static member of an already seen type>}}, [46] = {baseName = "y7iizrf51pgi8vjhiwndajz4ihwm416f-findutils-4.8.0", static HashLen = 32, static dummy = {baseName = 'f' <repeats 32 times>, "-x", static HashLen = 32, static dummy = <same as static member of an already seen type>}}, [47] = {baseName = "ygabp1386cf33djg5nwzliybvmfcd30b-gcc-wrapper-10.3.0", static HashLen = 32, static dummy = {baseName = 'f' <repeats 32 times>, "-x", static HashLen = 32, static dummy = <same as static member of an already seen type>}}, [48] = {baseName = "zi5qw4dab38kfi33svih50fl3kfkry6d-stdenv-linux", static HashLen = 32, static dummy = {baseName = 'f' <repeats 32 times>, "-x", static HashLen = 32, static dummy = <same as static member of an already seen type>}}, [49] = {baseName = "zxcxlcm4rpxljp6zx52di2cabza8g1pq-patch-2.7.6", static HashLen = 32, static dummy = {baseName = 'f' <repeats 32 times>, "-x", static HashLen = 32, static dummy = <same as static member of an already seen type>}}}, platform = "x86_64-linux", builder = "/nix/store/2kh3c4v2vf6d6xg6c9n8zvfpwf3zzwca-bash-5.1-p12/bin/bash", args = std::__cxx11::list = {[0] = "-e", [1] = "/nix/store/9krlzvny65gdc8s7kpb6lkx8cd02c25b-default-builder.sh"}, env = std::map with 27 elements = {["buildInputs"] = "/nix/store/2igzrq29jv3wdy4w822r6kwsbr2akc77-libpcap-1.10.1", ["builder"] = "/nix/store/2kh3c4v2vf6d6xg6c9n8zvfpwf3zzwca-bash-5.1-p12/bin/bash", ["configureFlags"] = "", ["depsBuildBuild"] = "", ["depsBuildBuildPropagated"] = "", ["depsBuildTarget"] = "", ["depsBuildTargetPropagated"] = "", ["depsHostHost"] = "", ["depsHostHostPropagated"] = "", ["depsTargetTarget"] = "", ["depsTargetTargetPropagated"] = "", ["doCheck"] = "", ["doInstallCheck"] = "", ["name"] = "tcpdump-4.99.1", ["nativeBuildInputs"] = "", ["out"] = "/nix/store/qxmii38ifg5y8y52wzjdwwsg7l22bjba-tcpdump-4.99.1", ["outputs"] = "out", ["patches"] = "", ["pname"] = "tcpdump", ["postPatch"] = "patchShebangs tests\n", ["propagatedBuildInputs"] = "", ["propagatedNativeBuildInputs"] = "", ["src"] = "/nix/store/gai08ry1zhyj2msi2pmrm84g90asa5br-tcpdump-4.99.1.tar.gz", ["stdenv"] = "/nix/store/zi5qw4dab38kfi33svih50fl3kfkry6d-stdenv-linux", ["strictDeps"] = "", ["system"] = "x86_64-linux", ["version"] = "4.99.1"}, name = "tcpdump-4.99.1"}
        buildMode = nix::bmNormal
        res = {status = nix::BuildResult::MiscFailure, errorMsg = "", timesBuilt = 0, isNonDeterministic = false, builtOutputs = std::map with 0 elements, startTime = 0, stopTime = 0}
        __PRETTY_FUNCTION__ = "void nix::daemon::performOp(nix::daemon::TunnelLogger*, nix::ref<nix::Store>, nix::daemon::TrustedFlag, nix::daemon::RecursiveFlag, unsigned int, nix::Source&, nix::BufferedSink&, unsigned int)"
#27 0x00007fb14786236d in nix::daemon::processConnection(nix::ref<nix::Store>, nix::FdSource&, nix::FdSink&, nix::daemon::TrustedFlag, nix::daemon::RecursiveFlag, std::function<void (nix::Store&)>) (store=..., from=..., to=..., trusted=nix::daemon::Trusted, recursive=nix::daemon::NotRecursive, authHook=...) at src/libstore/daemon.cc:997
        op = nix::wopBuildDerivation
        monitor = std::unique_ptr<nix::MonitorFdHup> = {get() = 0x564436910b80}
        magic = 1852405859
        clientVersion = 288
        tunnelLogger = 0x564436911d80
        prevLogger = 0x56443690ff30
        opCount = 4
        finally = {fun = {<std::_Maybe_unary_or_binary_function<void>> = {<No data fields>}, <std::_Function_base> = {static _M_max_size = 16, static _M_max_align = 8, _M_functor = {_M_unused = {_M_object = 0x7ffeadcc4120, _M_const_object = 0x7ffeadcc4120, _M_function_pointer = 0x7ffeadcc4120, _M_member_pointer = (void (std::_Undefined_class::*)(std::_Undefined_class * const)) 0x7ffeadcc4120, this adjustment 140731814265088}, _M_pod_data = " A̭\376\177\000\000\000A̭\376\177\000"}, _M_manager = 0x7fb147862ef7 <std::_Function_handler<void(), nix::daemon::processConnection(nix::ref<nix::Store>, nix::FdSource&, nix::FdSink&, nix::daemon::TrustedFlag, nix::daemon::RecursiveFlag, std::function<void(nix::Store&)>)::<lambda()> >::_M_manager(std::_Any_data &, const std::_Any_data &, std::_Manager_operation)>}, _M_invoker = 0x7fb147862ed4 <std::_Function_handler<void(), nix::daemon::processConnection(nix::ref<nix::Store>, nix::FdSource&, nix::FdSink&, nix::daemon::TrustedFlag, nix::daemon::RecursiveFlag, std::function<void(nix::Store&)>)::<lambda()> >::_M_invoke(const std::_Any_data &)>}}
        __PRETTY_FUNCTION__ = "void nix::daemon::processConnection(nix::ref<nix::Store>, nix::FdSource&, nix::FdSink&, nix::daemon::TrustedFlag, nix::daemon::RecursiveFlag, std::function<void(nix::Store&)>)"
#28 0x0000564434774db7 in operator() (__closure=0x56443690e510) at src/nix/daemon.cc:244
        from = {<nix::BufferedSource> = {<nix::Source> = {_vptr.Source = 0x7fb14710d818 <vtable for nix::FdSource+16>}, bufSize = 32768, bufPosIn = 0, bufPosOut = 0, buffer = std::unique_ptr<char []> = {get() = 0x56443693bae0 "$"}}, fd = 5, read = 12424, _good = true}
        to = {<nix::BufferedSink> = {<nix::Sink> = {_vptr.Sink = 0x7fb14710d8a8 <vtable for nix::FdSink+48>}, bufSize = 32768, bufPos = 0, buffer = std::unique_ptr<char []> = {get() = 0x564436943af0 "gmlo"}}, fd = 5, warn = false, written = 11408, _good = false}
        fdSocket = @0x7ffeadcc46f0: {fd = -1}
        peer = @0x7ffeadcc4720: {pidKnown = true, pid = 1812115, uidKnown = true, uid = 1000, gidKnown = true, gid = 100}
        remote = @0x7ffeadcc46f8: {fd = 5}
        trusted = @0x7ffeadcc46ec: nix::daemon::Trusted
        user = "hexa"
#29 0x000056443477775a in std::__invoke_impl<void, daemonLoop()::<lambda()>&>(std::__invoke_other, struct {...} &) (__f=...) at /nix/store/v819nrv8d33ns36gm4v9vqydq1v95axi-gcc-10.3.0/include/c++/10.3.0/bits/invoke.h:60
No locals.
#30 0x0000564434777185 in std::__invoke_r<void, daemonLoop()::<lambda()>&>(struct {...} &) (__fn=...) at /nix/store/v819nrv8d33ns36gm4v9vqydq1v95axi-gcc-10.3.0/include/c++/10.3.0/bits/invoke.h:110
No locals.
#31 0x0000564434776c38 in std::_Function_handler<void(), daemonLoop()::<lambda()> >::_M_invoke(const std::_Any_data &) (__functor=...) at /nix/store/v819nrv8d33ns36gm4v9vqydq1v95axi-gcc-10.3.0/include/c++/10.3.0/bits/std_function.h:291
No locals.
#32 0x0000564434811b1a in std::function<void ()>::operator()() const (this=0x7ffeadcc48b0) at /nix/store/v819nrv8d33ns36gm4v9vqydq1v95axi-gcc-10.3.0/include/c++/10.3.0/bits/std_function.h:622
No locals.
#33 0x00007fb147057568 in operator() (__closure=0x7ffeadcc4690) at src/libutil/util.cc:1008
        options = @0x7ffeadcc4a60: {errorPrefix = "unexpected Nix daemon error: ", dieWithParent = false, runExitHandlers = true, allowVfork = false}
        fun = @0x7ffeadcc48b0: {<std::_Maybe_unary_or_binary_function<void>> = {<No data fields>}, <std::_Function_base> = {static _M_max_size = 16, static _M_max_align = 8, _M_functor = {_M_unused = {_M_object = 0x56443690e510, _M_const_object = 0x56443690e510, _M_function_pointer = 0x56443690e510, _M_member_pointer = (void (std::_Undefined_class::*)(std::_Undefined_class * const)) 0x56443690e510, this adjustment 57}, _M_pod_data = "\020\345\220\066DV\000\000\071\000\000\000\000\000\000"}, _M_manager = 0x564434776c3b <std::_Function_handler<void(), daemonLoop()::<lambda()> >::_M_manager(std::_Any_data &, const std::_Any_data &, std::_Manager_operation)>}, _M_invoker = 0x564434776c18 <std::_Function_handler<void(), daemonLoop()::<lambda()> >::_M_invoke(const std::_Any_data &)>}
#34 0x00007fb14705ebe2 in std::__invoke_impl<void, nix::startProcess(std::function<void()>, const nix::ProcessOptions&)::<lambda()>&>(std::__invoke_other, struct {...} &) (__f=...) at /nix/store/v819nrv8d33ns36gm4v9vqydq1v95axi-gcc-10.3.0/include/c++/10.3.0/bits/invoke.h:60
No locals.
#35 0x00007fb14705e33e in std::__invoke_r<void, nix::startProcess(std::function<void()>, const nix::ProcessOptions&)::<lambda()>&>(struct {...} &) (__fn=...) at /nix/store/v819nrv8d33ns36gm4v9vqydq1v95axi-gcc-10.3.0/include/c++/10.3.0/bits/invoke.h:110
No locals.
#36 0x00007fb14705db18 in std::_Function_handler<void(), nix::startProcess(std::function<void()>, const nix::ProcessOptions&)::<lambda()> >::_M_invoke(const std::_Any_data &) (__functor=...) at /nix/store/v819nrv8d33ns36gm4v9vqydq1v95axi-gcc-10.3.0/include/c++/10.3.0/bits/std_function.h:291
No locals.
#37 0x0000564434811b1a in std::function<void ()>::operator()() const (this=0x7ffeadcc4690) at /nix/store/v819nrv8d33ns36gm4v9vqydq1v95axi-gcc-10.3.0/include/c++/10.3.0/bits/std_function.h:622
No locals.
#38 0x00007fb1470574a5 in nix::doFork(bool, std::function<void()>) (allowVfork=false, fun=...) at src/libutil/util.cc:992
        pid = 0
#39 0x00007fb1470576a0 in nix::startProcess(std::function<void ()>, nix::ProcessOptions const&) (fun=..., options=...) at src/libutil/util.cc:1020
        wrapper = {__options = @0x7ffeadcc4a60, __fun = @0x7ffeadcc48b0}
        pid = 22084
#40 0x0000564434775910 in daemonLoop () at src/nix/daemon.cc:225
        remoteAddr = {sun_family = 1, sun_path = "̭\376\177\000\000\240\021\220\066DV\000\000\377\377\377\377\377\377\377\377\000\322'\005\201D[\250\220I̭\376\177\000\000\066Ji4DV\000\000H\033\220\066DV\000\000\240\021\220\066DV\000\000\377\377\377\377\377\377\377\377L\033\220\066DV\000\000\377\377\377\377\377\377\377\377\031gw4DV\000\000\250\021\220\066DV\000\000\250\021\220\066DV"}
        trusted = nix::daemon::Trusted
        pw = 0x7fb1467f4f40 <resbuf>
        trustedUsers = std::__cxx11::list = {[0] = "root", [1] = "braack", [2] = "fleaz", [3] = "hexa", [4] = "cccda", [5] = "cap", [6] = "maralorn"}
        allowedUsers = std::__cxx11::list = {[0] = "*"}
        remoteAddrLen = 2
        remote = {fd = 5}
        peer = {pidKnown = true, pid = 1812115, uidKnown = true, uid = 1000, gidKnown = true, gid = 100}
        user = "hexa"
        gr = 0x7fb1467f4dc0 <resbuf>
        group = "users"
        options = {errorPrefix = "unexpected Nix daemon error: ", dieWithParent = false, runExitHandlers = true, allowVfork = false}
        fdSocket = {fd = -1}
        listenFds = std::optional<std::string> [no contained value]
#41 0x0000564434776452 in runDaemon (stdio=false) at src/nix/daemon.cc:308
No locals.
#42 0x0000564434776781 in main_nix_daemon (argc=2, argv=0x7ffeadcc5b68) at src/nix/daemon.cc:329
        stdio = false
#43 0x000056443469b548 in std::__invoke_impl<int, int (*&)(int, char**), int, char**> (__f=@0x7ffeadcc5280: 0x564434776719 <main_nix_daemon(int, char**)>) at /nix/store/v819nrv8d33ns36gm4v9vqydq1v95axi-gcc-10.3.0/include/c++/10.3.0/bits/invoke.h:60
No locals.
#44 0x000056443469b5a0 in std::__invoke_r<void, int (*&)(int, char**), int, char**> (__fn=@0x7ffeadcc5280: 0x564434776719 <main_nix_daemon(int, char**)>) at /nix/store/v819nrv8d33ns36gm4v9vqydq1v95axi-gcc-10.3.0/include/c++/10.3.0/bits/invoke.h:110
No locals.
#45 0x0000564434696d1e in std::_Function_handler<void (int, char**), int (*)(int, char**)>::_M_invoke(std::_Any_data const&, int&&, char**&&) (__functor=..., __args#0=@0x7ffeadcc4ef4: 2, __args#1=@0x7ffeadcc4ee8: 0x7ffeadcc5b68) at /nix/store/v819nrv8d33ns36gm4v9vqydq1v95axi-gcc-10.3.0/include/c++/10.3.0/bits/std_function.h:291
No locals.
#46 0x0000564434812f1e in std::function<void (int, char**)>::operator()(int, char**) const (this=0x7ffeadcc5280, __args#0=2, __args#1=0x7ffeadcc5b68) at /nix/store/v819nrv8d33ns36gm4v9vqydq1v95axi-gcc-10.3.0/include/c++/10.3.0/bits/std_function.h:622
No locals.
#47 0x000056443480b21d in nix::mainWrapped (argc=2, argv=0x7ffeadcc5b68) at src/nix/main.cc:273
        legacy = {<std::_Maybe_unary_or_binary_function<void, int, char**>> = {<std::binary_function<int, char**, void>> = {<No data fields>}, <No data fields>}, <std::_Function_base> = {static _M_max_size = 16, static _M_max_align = 8, _M_functor = {_M_unused = {_M_object = 0x564434776719 <main_nix_daemon(int, char**)>, _M_const_object = 0x564434776719 <main_nix_daemon(int, char**)>, _M_function_pointer = 0x564434776719 <main_nix_daemon(int, char**)>, _M_member_pointer = &virtual table offset 94850938005272, this adjustment 94850973081840}, _M_pod_data = "\031gw4DV\000\000\360\240\216\066DV\000"}, _M_manager = 0x564434696d28 <std::_Function_handler<void (int, char**), int (*)(int, char**)>::_M_manager(std::_Any_data&, std::_Any_data const&, std::_Manager_operation)>}, _M_invoker = 0x564434696ccf <std::_Function_handler<void (int, char**), int (*)(int, char**)>::_M_invoke(std::_Any_data const&, int&&, char**&&)>}
        programName = "nix-daemon"
        f = {fun = {<std::_Maybe_unary_or_binary_function<void>> = {<No data fields>}, <std::_Function_base> = {static _M_max_size = 16, static _M_max_align = 8, _M_functor = {_M_unused = {_M_object = 0x3, _M_const_object = 0x3, _M_function_pointer = 0x3, _M_member_pointer = &virtual table offset 2}, _M_pod_data = "\003", '\000' <repeats 14 times>}, _M_manager = 0x0}, _M_invoker = 0x0}}
        args = {<nix::MultiCommand> = {<nix::Args> = {_vptr.Args = 0x7ffeadcc50e0, static ArityAny = 18446744073709551615, longFlags = std::map with 2 elements<error reading variable: Cannot access memory at address 0x18>, shortFlags = std::map with 8 elements<error reading variable: Cannot access memory at address 0x18>, expectedArgs = std::__cxx11::list = {[0] = {label = "", optional = 96, handler = {fun = {<std::_Maybe_unary_or_binary_function<void, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >> = {<std::unary_function<std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >, void>> = {<No data fields>}, <No data fields>}, <std::_Function_base> = {static _M_max_size = 16, static _M_max_align = 8, _M_functor = {_M_unused = {_M_object = 0x5644368ec566, _M_const_object = 0x5644368ec566, _M_function_pointer = 0x5644368ec566, _M_member_pointer = (void (std::_Undefined_class::*)(std::_Undefined_class * const)) 0x5644368ec566, this adjustment 94850973091174}, _M_pod_data = "fŎ6DV\000\000fŎ6DV\000"}, _M_manager = 0x0}, _M_invoker = 0x0}, arity = 0}, completer = {<std::_Maybe_unary_or_binary_function<void, unsigned long, std::basic_string_view<char, std::char_traits<char> > >> = {<std::binary_function<unsigned long, std::basic_string_view<char, std::char_traits<char> >, void>> = {<No data fields>}, <No data fields>}, <std::_Function_base> = {static _M_max_size = 16, static _M_max_align = 8, _M_functor = {_M_unused = {_M_object = 0x0, _M_const_object = 0x0, _M_function_pointer = 0x0, _M_member_pointer = NULL}, _M_pod_data = "\000\000\000\000\000\000\000\000\060\177\216\066DV\000"}, _M_manager = 0x0}, _M_invoker = 0x3ff280000000000}}, [1] = {label = <error reading variable: Cannot create a lazy string with address 0x0, and a non-zero length.>, optional = false, handler = {fun = {<std::_Maybe_unary_or_binary_function<void, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >> = {<std::unary_function<std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >, void>> = {<No data fields>}, <No data fields>}, <std::_Function_base> = {static _M_max_size = 16, static _M_max_align = 8, _M_functor = {_M_unused = {_M_object = 0x151, _M_const_object = 0x151, _M_function_pointer = 0x151, _M_member_pointer = &virtual table offset 336, this adjustment 4550951466390142760}, _M_pod_data = "Q\001\000\000\000\000\000\000(?:(?:(?"}, _M_manager = 0x7a2d615b3a3f283a}, _M_invoker = 0x2e2d392d305a2d41}, arity = 4197117891467640415}, completer = {<std::_Maybe_unary_or_binary_function<void, unsigned long, std::basic_string_view<char, std::char_traits<char> > >> = {<std::binary_function<unsigned long, std::basic_string_view<char, std::char_traits<char> >, void>> = {<No data fields>}, <No data fields>}, <std::_Function_base> = {static _M_max_size = 16, static _M_max_align = 8, _M_functor = {_M_unused = {_M_object = 0x662d61392d305b25, _M_const_object = 0x662d61392d305b25, _M_function_pointer = 0x662d61392d305b25, _M_member_pointer = &virtual table offset 7362647864019802916, this adjustment 4120002403078909249}, _M_pod_data = "%[0-9a-fA-F][0-9"}, _M_manager = 0x295d462d41662d61}, _M_invoker = 0x2624215b3a3f287c}}<error reading variable: Cannot access memory at address 0x5f2d2b>...}, hiddenCategories = std::set with 94850973073440 elements<error reading variable: Cannot access memory at address 0x1c>, parent = 0x7ffeadcc5190}, _vptr.MultiCommand = 0x7ffeadcc50e0, commands = std::map with 2 elements<error reading variable: Cannot access memory at address 0x18>, categories = std::map with 8 elements<error reading variable: Cannot access memory at address 0x18>, command = std::optional<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, nix::ref<nix::Command> >> containing None = {first = "@Ŏ6DV\000\000CŎ6DV\000\000CŎ6DV", '\000' <repeats 26 times>, "`Ŏ6DV\000\000fŎ6DV\000\000fŎ6DV", '\000' <repeats 34 times>, "\060\177\216\066DV", '\000' <repeats 15 times>, "(\377\003\376\377\377\207\376\377\377\a", '\000' <repeats 16 times>, "!\000\000\000\000\000\000\000+-_", '\000' <repeats 21 times>, "!\000\000\000\000\000\000\000AZaz09\000\000"..., second = {p = std::shared_ptr<nix::Command> (use count 879500478, weak count 22083) = {get() = 0x564434698627 <__gnu_cxx::new_allocator<char>::deallocate(char*, unsigned long)+39>}}}}, <nix::MixCommonArgs> = <invalid address>, _vptr.NixArgs = 0x7ffeadcc50e0, printBuildLogs = 142, useNet = 55, refresh = 112, showVersion = 52, aliases = std::map with 140399403561864 elements<error reading variable: Cannot access memory at address 0xfffffffffffffd10>, aliasUsed = 16}
        printCompletions = {fun = {<std::_Maybe_unary_or_binary_function<void>> = {<No data fields>}, <std::_Function_base> = {static _M_max_size = 16, static _M_max_align = 8, _M_functor = {_M_unused = {_M_object = 0x0, _M_const_object = 0x0, _M_function_pointer = 0x0, _M_member_pointer = NULL}, _M_pod_data = '\000' <repeats 15 times>}, _M_manager = 0x5644368e8068}, _M_invoker = 0x1007ffeadcc50d0}}
#48 0x000056443480c5d8 in operator() (__closure=0x7ffeadcc5a20) at src/nix/main.cc:388
        argc = @0x7ffeadcc59ec: 2
        argv = @0x7ffeadcc59e0: 0x7ffeadcc5b68
#49 0x000056443480d982 in std::__invoke_impl<void, main(int, char**)::<lambda()>&>(std::__invoke_other, struct {...} &) (__f=...) at /nix/store/v819nrv8d33ns36gm4v9vqydq1v95axi-gcc-10.3.0/include/c++/10.3.0/bits/invoke.h:60
No locals.
#50 0x000056443480d4b0 in std::__invoke_r<void, main(int, char**)::<lambda()>&>(struct {...} &) (__fn=...) at /nix/store/v819nrv8d33ns36gm4v9vqydq1v95axi-gcc-10.3.0/include/c++/10.3.0/bits/invoke.h:110
No locals.
#51 0x000056443480ceba in std::_Function_handler<void(), main(int, char**)::<lambda()> >::_M_invoke(const std::_Any_data &) (__functor=...) at /nix/store/v819nrv8d33ns36gm4v9vqydq1v95axi-gcc-10.3.0/include/c++/10.3.0/bits/std_function.h:291
No locals.
#52 0x0000564434811b1a in std::function<void ()>::operator()() const (this=0x7ffeadcc5a20) at /nix/store/v819nrv8d33ns36gm4v9vqydq1v95axi-gcc-10.3.0/include/c++/10.3.0/bits/std_function.h:622
No locals.
#53 0x00007fb147f674a2 in nix::handleExceptions(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::function<void ()>) (programName="nix-daemon", fun=...) at src/libmain/shared.cc:373
        receiveInterrupts = {target = 140399346178688, callback = std::unique_ptr<nix::InterruptCallback> = {get() = 0x5644368eec20}}
        error = "\033[31;1merror:\033[0m "
#54 0x000056443480c679 in main (argc=2, argv=0x7ffeadcc5b68) at src/nix/main.cc:387
No locals.
andir commented 2 years ago

Still happens with 2.6 and 2.3 when remote building across architectures.

Ericson2314 commented 1 year ago

Thanks for the backtrace. We have an exception raised during a destructor.

coreyoconnor commented 1 year ago

Took me a bit to notice this was happening: I had a retry loop mitigating the issue. That stopped helping recently.

I was able to reproduce with 2.8 and 2.9 on both the builder and the requester.

Fixing the nix version to 2.3 for both avoided the issues.