1
1
Fork 0
mirror of https://github.com/NixOS/nix.git synced 2025-11-22 10:19:36 +01:00
nix/src/libstore
Wolfgang Walther 229e97195a libstore: fix race condition when creating state directories
Running parallel nix in nix can lead to multiple instances trying to
create the state directories and failing on the `createSymlink` step,
because the link already exists.

`replaceSymlink` is already idempotent, so let's use that.

Resolves #2706

(cherry picked from commit d64c922164)
2025-07-30 12:56:36 +00:00
..
build Apply clang-format universally. 2025-07-18 22:49:40 +03:00
builtins Apply clang-format universally. 2025-07-18 22:49:40 +03:00
include/nix/store Apply clang-format universally. 2025-07-18 22:49:40 +03:00
linux Apply clang-format universally. 2025-07-18 22:49:40 +03:00
unix Apply clang-format universally. 2025-07-18 22:49:40 +03:00
windows Apply clang-format universally. 2025-07-18 22:49:40 +03:00
.version Build nix-store with Meson 2024-06-14 10:25:14 -04:00
binary-cache-store.cc Apply clang-format universally. 2025-07-18 22:49:40 +03:00
build-result.cc Apply clang-format universally. 2025-07-18 22:49:40 +03:00
ca-specific-schema.sql Rename to "content-address*ing* derivation" 2025-02-10 01:12:56 -05:00
common-protocol.cc Apply clang-format universally. 2025-07-18 22:49:40 +03:00
common-ssh-store-config.cc Apply clang-format universally. 2025-07-18 22:49:40 +03:00
content-address.cc Apply clang-format universally. 2025-07-18 22:49:40 +03:00
daemon.cc Apply clang-format universally. 2025-07-18 22:49:40 +03:00
derivation-options.cc Apply clang-format universally. 2025-07-18 22:49:40 +03:00
derivations.cc Apply clang-format universally. 2025-07-18 22:49:40 +03:00
derived-path-map.cc Apply clang-format universally. 2025-07-18 22:49:40 +03:00
derived-path.cc Apply clang-format universally. 2025-07-18 22:49:40 +03:00
downstream-placeholder.cc Apply clang-format universally. 2025-07-18 22:49:40 +03:00
dummy-store.cc Apply clang-format universally. 2025-07-18 22:49:40 +03:00
dummy-store.md Support per-store Markdown documentation 2023-03-21 14:03:40 +01:00
export-import.cc Apply clang-format universally. 2025-07-18 22:49:40 +03:00
filetransfer.cc Apply clang-format universally. 2025-07-18 22:49:40 +03:00
gc.cc Apply clang-format universally. 2025-07-18 22:49:40 +03:00
globals.cc Apply clang-format universally. 2025-07-18 22:49:40 +03:00
http-binary-cache-store.cc Apply clang-format universally. 2025-07-18 22:49:40 +03:00
http-binary-cache-store.md Support per-store Markdown documentation 2023-03-21 14:03:40 +01:00
indirect-root-store.cc Apply clang-format universally. 2025-07-18 22:49:40 +03:00
keys.cc Apply clang-format universally. 2025-07-18 22:49:40 +03:00
legacy-ssh-store.cc Apply clang-format universally. 2025-07-18 22:49:40 +03:00
legacy-ssh-store.md Support per-store Markdown documentation 2023-03-21 14:03:40 +01:00
local-binary-cache-store.cc Apply clang-format universally. 2025-07-18 22:49:40 +03:00
local-binary-cache-store.md Support per-store Markdown documentation 2023-03-21 14:03:40 +01:00
local-fs-store.cc Apply clang-format universally. 2025-07-18 22:49:40 +03:00
local-overlay-store.cc Apply clang-format universally. 2025-07-18 22:49:40 +03:00
local-overlay-store.md docs: Fix miscellaneous typos and formatting issues 2025-05-13 22:20:11 +00:00
local-store.cc libstore: fix race condition when creating state directories 2025-07-30 12:56:36 +00:00
local-store.md Build the local store on Windows 2024-05-10 13:05:23 -04:00
log-store.cc Apply clang-format universally. 2025-07-18 22:49:40 +03:00
machines.cc Apply clang-format universally. 2025-07-18 22:49:40 +03:00
make-content-addressed.cc Apply clang-format universally. 2025-07-18 22:49:40 +03:00
meson.build treewide: Fix Meson CPU names for powerpc CPUs 2025-07-21 22:49:14 +00:00
meson.options Meson misc things 2024-08-27 10:19:55 -04:00
misc.cc Apply clang-format universally. 2025-07-18 22:49:40 +03:00
mounted-ssh-store.md MountedSSHStore: stores on shared filesystems 2023-11-21 13:34:01 -05:00
names.cc Apply clang-format universally. 2025-07-18 22:49:40 +03:00
nar-accessor.cc Apply clang-format universally. 2025-07-18 22:49:40 +03:00
nar-info-disk-cache.cc Apply clang-format universally. 2025-07-18 22:49:40 +03:00
nar-info.cc Apply clang-format universally. 2025-07-18 22:49:40 +03:00
nix-meson-build-support rename: build-utils-meson -> nix-meson-build-support 2024-12-09 16:54:42 +01:00
optimise-store.cc Apply clang-format universally. 2025-07-18 22:49:40 +03:00
outputs-spec.cc Apply clang-format universally. 2025-07-18 22:49:40 +03:00
package.nix Expose the nix component in header include paths 2025-04-01 11:40:42 -04:00
parsed-derivations.cc Apply clang-format universally. 2025-07-18 22:49:40 +03:00
path-info.cc Apply clang-format universally. 2025-07-18 22:49:40 +03:00
path-references.cc Apply clang-format universally. 2025-07-18 22:49:40 +03:00
path-with-outputs.cc Apply clang-format universally. 2025-07-18 22:49:40 +03:00
path.cc Apply clang-format universally. 2025-07-18 22:49:40 +03:00
pathlocks.cc Apply clang-format universally. 2025-07-18 22:49:40 +03:00
posix-fs-canonicalise.cc Apply clang-format universally. 2025-07-18 22:49:40 +03:00
profiles.cc Apply clang-format universally. 2025-07-18 22:49:40 +03:00
realisation.cc Apply clang-format universally. 2025-07-18 22:49:40 +03:00
remote-fs-accessor.cc Apply clang-format universally. 2025-07-18 22:49:40 +03:00
remote-store.cc Apply clang-format universally. 2025-07-18 22:49:40 +03:00
restricted-store.cc Apply clang-format universally. 2025-07-18 22:49:40 +03:00
s3-binary-cache-store.cc Apply clang-format universally. 2025-07-18 22:49:40 +03:00
s3-binary-cache-store.md fix location 2024-09-27 11:07:04 +02:00
schema.sql Build the local store on Windows 2024-05-10 13:05:23 -04:00
serve-protocol-connection.cc Apply clang-format universally. 2025-07-18 22:49:40 +03:00
serve-protocol.cc Apply clang-format universally. 2025-07-18 22:49:40 +03:00
sqlite.cc Apply clang-format universally. 2025-07-18 22:49:40 +03:00
ssh-store.cc Apply clang-format universally. 2025-07-18 22:49:40 +03:00
ssh-store.md Support per-store Markdown documentation 2023-03-21 14:03:40 +01:00
ssh.cc Apply clang-format universally. 2025-07-18 22:49:40 +03:00
store-api.cc Apply clang-format universally. 2025-07-18 22:49:40 +03:00
store-dir-config.cc Apply clang-format universally. 2025-07-18 22:49:40 +03:00
store-reference.cc Apply clang-format universally. 2025-07-18 22:49:40 +03:00
store-registration.cc Apply clang-format universally. 2025-07-18 22:49:40 +03:00
uds-remote-store.cc Apply clang-format universally. 2025-07-18 22:49:40 +03:00
uds-remote-store.md Enable the unix:// store on Windows 2024-04-18 16:58:32 -04:00
worker-protocol-connection.cc Apply clang-format universally. 2025-07-18 22:49:40 +03:00
worker-protocol.cc Apply clang-format universally. 2025-07-18 22:49:40 +03:00