mirror of
https://github.com/NixOS/nix.git
synced 2025-11-09 12:06:01 +01:00
Ever since SQLite in Nixpkgs was updated to 3.8.0.2, Nix has randomly segfaulted on Darwin: http://hydra.nixos.org/build/6175515 http://hydra.nixos.org/build/6611038 It turns out that this is because the binary cache substituter somehow ends up loading two versions of SQLite: the one in Nixpkgs and the other from /usr/lib/libsqlite3.dylib. It's not exactly clear why the latter is loaded, but it appears to be because WWW::Curl indirectly loads /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation, which in turn seems to load /usr/lib/libsqlite3.dylib. This leads to a segfault when Perl exits: #0 0x00000001010375f4 in sqlite3_finalize () #1 0x000000010125806e in sqlite_st_destroy () #2 0x000000010124bc30 in XS_DBD__SQLite__st_DESTROY () #3 0x00000001001c8155 in XS_DBI_dispatch () ... #14 0x0000000100023224 in perl_destruct () #15 0x0000000100000d6a in main () ... The workaround is to explicitly load DBD::SQLite before WWW::Curl. |
||
|---|---|---|
| .. | ||
| build-remote.pl.in | ||
| copy-from-other-stores.pl.in | ||
| copying-collector.pl | ||
| download-from-binary-cache.pl.in | ||
| download-using-manifests.pl.in | ||
| find-runtime-roots.pl.in | ||
| install-nix-from-closure.sh | ||
| Makefile.am | ||
| nix-build.in | ||
| nix-channel.in | ||
| nix-collect-garbage.in | ||
| nix-copy-closure.in | ||
| nix-generate-patches.in | ||
| nix-http-export.cgi.in | ||
| nix-install-package.in | ||
| nix-prefetch-url.in | ||
| nix-profile.sh.in | ||
| nix-pull.in | ||
| nix-push.in | ||
| nix-reduce-build.in | ||
| remove-patches.pl | ||
| show-duplication.pl | ||