about summary refs log tree commit diff
path: root/src/libstore/local-binary-cache-store.cc
AgeCommit message (Collapse)AuthorFilesLines
2016-09-16 Make computeFSClosure() single-threaded againEelco Dolstra1-11/+13
The fact that queryPathInfo() is synchronous meant that we needed a thread for every concurrent binary cache lookup, even though they end up being handled by the same download thread. Requiring hundreds of threads is not a good idea. So now there is an asynchronous version of queryPathInfo() that takes a callback function to process the result. Similarly, enqueueDownload() now takes a callback rather than returning a future. Thus, a command like nix path-info --store https://cache.nixos.org/ -r /nix/store/slljrzwmpygy1daay14kjszsr9xix063-nixos-16.09beta231.dccf8c5 that returns 4941 paths now takes 1.87s using only 2 threads (the main thread and the downloader thread). (This is with a prewarmed CloudFront.)
2016-06-01 HttpBinaryCacheStore: Fix caching of WantMassQueryEelco Dolstra1-7/+3
Also, test HttpBinaryCacheStore in addition to LocalBinaryCacheStore.
2016-06-01 Make the store directory a member variable of StoreEelco Dolstra1-4/+4
2016-05-30 Test the NAR info cacheEelco Dolstra1-0/+7
2016-05-30 BinaryCacheStore: Remove buildPaths() / ensurePath()Eelco Dolstra1-4/+3
2016-04-29 nix verify --all: Support local binary cachesEelco Dolstra1-0/+14
2016-04-29 BinaryCacheStore: Make the signing key a parameterEelco Dolstra1-20/+9
2016-04-29 Allow parameters in store URIsEelco Dolstra1-1/+9
This is to allow store-specific configuration, e.g. s3://my-cache?compression=bzip2&secret-key=/path/to/key.
2016-04-15 BinaryCacheStore::readFile(): Return a shared_ptr to a stringEelco Dolstra1-3/+8
This allows readFile() to indicate that a file doesn't exist, and might eliminate some large string copying.
2016-03-04 Add option binary-cache-secret-key-file for signing binary cachesEelco Dolstra1-1/+2
2016-03-04 BinaryCacheStore: Remove publicKeyFile argumentEelco Dolstra1-11/+8
The public key can be derived from the secret key, so there's no need for the user to supply it separately.
2016-03-02 Provide function required by HydraEelco Dolstra1-3/+11
2016-03-02 Eliminate local-binary-cache-store.hhEelco Dolstra1-1/+25
2016-03-02 Make store implementations pluggableEelco Dolstra1-0/+9
This for instance allows hydra-queue-runner to add the S3 backend at runtime.
2016-02-24 Move BinaryCacheStore / LocalBinaryCacheStore from HydraEelco Dolstra1-0/+44
So you can now do: $ NIX_REMOTE=file:///tmp/binary-cache nix-store -qR /nix/store/...