lix/src/libstore
Eelco Dolstra 5b798f6cae Fix random client failures during GC server shutdown
We need to close the GC server socket before shutting down the active
GC client connections, otherwise a client may (re)connect and get
ECONNRESET. But also handle ECONNRESET for resilience.

Fixes random failures like

  GC socket disconnected
  connecting to '/tmp/nix-shell.y07M0H/nix-test/default/var/nix/gc-socket/socket'
  sending GC root '/tmp/nix-shell.y07M0H/nix-test/default/store/kb5yzija0f1x5xkqkgclrdzldxj6nnc6-non-blocking'
  reading GC root from client: error: unexpected EOF reading a line
  1 store paths deleted, 0.00 MiB freed
  error: reading from file: Connection reset by peer

in gc-non-blocking.sh.
2022-11-27 12:57:18 +01:00
..
build Merge pull request #6456 from amjoseph-nixpkgs/seccomp-mips 2022-11-21 23:03:00 +01:00
builtins moveFile -> renameFile 2022-08-03 10:27:25 +02:00
tests Allow selecting derivation outputs using 'installable!outputs' 2022-05-03 13:43:52 +02:00
binary-cache-store.cc Implement BinaryCacheStore::queryPathFromHashPart() 2022-10-18 17:48:09 +02:00
binary-cache-store.hh Implement BinaryCacheStore::queryPathFromHashPart() 2022-10-18 17:48:09 +02:00
build-result.hh Remove duplicate "error:" 2022-04-08 11:48:30 +02:00
builtins.hh buildenv: Eliminate global variables, other cleanup 2020-03-24 14:06:47 +01:00
ca-specific-schema.sql ca: add sqlite index on RealisationsRefs(realisationReference) 2022-04-21 10:06:39 +02:00
content-address.cc Fix use after free in content-address.cc 2021-11-23 16:15:34 +01:00
content-address.hh Add ContentAddressMethod and parse/render it 2020-09-17 20:21:04 +02:00
crypto.cc Make sodium a required dependency 2021-01-06 17:56:53 +01:00
crypto.hh crypto.cc: API cleanup and add generate() / to_string() methods 2021-01-06 17:04:46 +01:00
daemon.cc Allow pass max-silent-time and build-poll-interval to daemon untrusted 2022-09-22 13:59:16 -05:00
daemon.hh Add missing #pragma once 2020-10-06 10:40:07 +02:00
derivations.cc Get rid of most .at calls (#6393) 2022-05-04 07:44:32 +02:00
derivations.hh Rename 'pure' -> 'sandboxed' for consistency 2022-03-31 16:12:25 +02:00
derived-path.cc nix build --json: Include build statistics 2022-11-21 12:06:01 +01:00
derived-path.hh nix build --json: Include build statistics 2022-11-21 12:06:01 +01:00
dummy-store.cc Remove std::string alias (for real this time) 2022-02-25 16:13:02 +01:00
export-import.cc Get rid of std::shared_ptr<std::string> and ref<std::string> 2022-01-18 11:12:30 +01:00
filetransfer.cc Remove a useless debug message in filetransfer.cc 2022-09-19 08:42:43 +02:00
filetransfer.hh doc: rephrase connect-timeout help message 2022-04-17 18:17:37 -05:00
fs-accessor.hh Use the fs accessor for readInvalidDerivation 2020-12-15 20:10:46 +01:00
gc-store.hh Deduplicate the Store downcasting with a template 2022-03-11 13:32:33 +00:00
gc.cc Fix random client failures during GC server shutdown 2022-11-27 12:57:18 +01:00
globals.cc Remove useless debug statements 2022-10-14 00:35:33 -07:00
globals.hh Merge pull request #6870 from amjoseph-nixpkgs/pr/doc/explain-local-remote-binary-substituter 2022-10-05 09:01:42 +02:00
http-binary-cache-store.cc HttpBinaryCacheStore::getFile(): Don't throw an exception 2022-05-30 13:24:04 +02:00
legacy-ssh-store.cc BuildResult: Use DerivedPath 2022-03-09 12:25:35 +01:00
local-binary-cache-store.cc moveFile -> renameFile 2022-08-03 10:27:25 +02:00
local-fs-store.cc Remove std::string alias (for real this time) 2022-02-25 16:13:02 +01:00
local-fs-store.hh Factor out a LogStore interface 2022-03-11 13:32:16 +00:00
local-store.cc Dodge "trusted" vs "trustworthy" by being explicit 2022-09-22 14:37:52 -04:00
local-store.hh Keep created temp dirs inside store, but protect from GC 2022-09-06 17:48:00 -05:00
local.mk libstore: link to aws-crt-cpp 2022-11-12 14:34:23 +01:00
lock.cc fix(libstore/lock): support users that belong to more than 10 groups 2022-06-08 13:45:41 -04:00
lock.hh Remove std::string alias (for real this time) 2022-02-25 16:13:02 +01:00
log-store.hh Deduplicate the Store downcasting with a template 2022-03-11 13:32:33 +00:00
machines.cc Remove std::string alias (for real this time) 2022-02-25 16:13:02 +01:00
machines.hh Remove std::string alias 2022-02-21 16:37:25 +01:00
make-content-addressed.cc Add a test for fetchClosure and 'nix store make-content-addressed' 2022-03-24 21:33:33 +01:00
make-content-addressed.hh fetchClosure: Allow a path to be rewritten to CA on the fly 2022-03-24 21:33:33 +01:00
misc.cc Get rid of most .at calls (#6393) 2022-05-04 07:44:32 +02:00
names.cc return string_views from forceString* 2022-01-27 17:15:43 +01:00
names.hh Remove std::string alias 2022-02-21 16:37:25 +01:00
nar-accessor.cc archive: check close errors when extracting nars 2022-09-22 12:50:32 -07:00
nar-accessor.hh Get rid of std::shared_ptr<std::string> and ref<std::string> 2022-01-18 11:12:30 +01:00
nar-info-disk-cache.cc [fixup] handle cache expiration in sqlite query 2022-06-23 14:54:25 -04:00
nar-info-disk-cache.hh Add a realisations disk cache 2021-05-06 17:38:20 +02:00
nar-info.cc libstore/nar-info: drop unused system field 2022-06-23 14:25:10 -04:00
nar-info.hh libstore/nar-info: drop unused system field 2022-06-23 14:25:10 -04:00
nix-store.pc.in pkg-config files: Use c++17 2019-03-14 14:11:12 +01:00
optimise-store.cc moveFile -> renameFile 2022-08-03 10:27:25 +02:00
parsed-derivations.cc Generalize DerivationType in preparation for impure derivations 2022-03-18 14:59:56 +00:00
parsed-derivations.hh Clean up DerivationOutput, and headers 2022-03-17 22:35:53 +00:00
path-info.cc Low-latency closure copy 2021-07-26 13:31:09 +02:00
path-info.hh Low-latency closure copy 2021-07-26 13:31:09 +02:00
path-with-outputs.cc nix profile: Support overriding outputs 2022-05-03 15:00:34 +02:00
path-with-outputs.hh nix profile: Support overriding outputs 2022-05-03 15:00:34 +02:00
path.cc Add support for impure derivations 2022-03-31 13:43:20 +02:00
path.hh Add support for impure derivations 2022-03-31 13:43:20 +02:00
pathlocks.cc Remove std::string alias (for real this time) 2022-02-25 16:13:02 +01:00
pathlocks.hh Remove std::string alias (for real this time) 2022-02-25 16:13:02 +01:00
profiles.cc Remove std::string alias (for real this time) 2022-02-25 16:13:02 +01:00
profiles.hh Remove std::string alias (for real this time) 2022-02-25 16:13:02 +01:00
realisation.cc Fix the build with nlohmann/json 3.10.4+ 2022-01-19 14:37:54 +01:00
realisation.hh buildPaths(): Add an evalStore argument 2021-07-22 09:59:51 +02:00
references.cc Restrict readFile context to references that appear in the string 2022-11-11 13:04:34 +01:00
references.hh Restrict readFile context to references that appear in the string 2022-11-11 13:04:34 +01:00
remote-fs-accessor.cc Get rid of std::shared_ptr<std::string> and ref<std::string> 2022-01-18 11:12:30 +01:00
remote-fs-accessor.hh Get rid of std::shared_ptr<std::string> and ref<std::string> 2022-01-18 11:12:30 +01:00
remote-store.cc Merge remote-tracking branch 'origin/master' into parallel-nix-copy 2022-08-22 15:29:10 +02:00
remote-store.hh Indentation 2022-08-22 15:32:53 +02:00
repair-flag.hh Clean up DerivationOutput, and headers 2022-03-17 22:35:53 +00:00
s3-binary-cache-store.cc Remove std::string alias (for real this time) 2022-02-25 16:13:02 +01:00
s3-binary-cache-store.hh Overhaul store subclassing 2020-12-20 15:47:14 +00:00
s3.hh Fix libcxx build 2022-04-28 14:37:05 +02:00
sandbox-defaults.sb fix(libstore): allow Nix to access all Rosetta 2 paths on MacOS 2022-07-15 12:10:56 -07:00
sandbox-minimal.sb Always use the Darwin sandbox 2017-06-06 18:44:49 +02:00
sandbox-network.sb fix(libstore): allow access to trustd on macOS 2022-08-24 13:09:44 -04:00
schema.sql schema.sql: add comment about hash being in base16 2022-06-01 14:59:57 +02:00
serve-protocol.hh nix-store --serve: pass on settings.keepFailed from SSH store 2021-08-31 13:11:46 +02:00
sqlite.cc Actually, solve this in a lighter-weight way 2022-04-20 17:37:59 +00:00
sqlite.hh Make the default SQLiteError constructor public 2022-04-21 09:40:55 +02:00
ssh-store.cc Factor out a LogStore interface 2022-03-11 13:32:16 +00:00
ssh.cc Defer to SSH config files for ForwardAgent option 2022-10-22 19:51:22 -05:00
ssh.hh distributed builds: load remote builder host key from the machines file 2021-02-25 09:17:34 -05:00
store-api.cc Make warning about chroot store location more accurate 2022-10-12 12:12:12 -07:00
store-api.hh Indentation 2022-08-22 15:32:53 +02:00
store-cast.hh Deduplicate the Store downcasting with a template 2022-03-11 13:32:33 +00:00
uds-remote-store.cc Non-blocking garbage collector 2021-10-13 12:12:44 +02:00
uds-remote-store.hh Shut down write side before draining the read side 2021-09-23 18:01:04 +02:00
worker-protocol.hh Add Store::buildPathsWithResults() 2022-03-08 19:56:34 +01:00