forked from lix-project/lix
Fix hang in build-remote
This commit is contained in:
parent
4f09ce7940
commit
9bcb4d2dd9
|
@ -241,7 +241,7 @@ connected:
|
|||
|
||||
if (!missing.empty()) {
|
||||
Activity act(*logger, lvlTalkative, actUnknown, fmt("copying outputs from '%s'", storeUri));
|
||||
setenv("NIX_HELD_LOCKS", concatStringsSep(" ", missing).c_str(), 1); /* FIXME: ugly */
|
||||
store->locksHeld.insert(missing.begin(), missing.end()); /* FIXME: ugly */
|
||||
copyPaths(ref<Store>(sshStore), store, missing, NoRepair, NoCheckSigs, substitute);
|
||||
}
|
||||
|
||||
|
|
|
@ -992,7 +992,6 @@ void LocalStore::addToStore(const ValidPathInfo & info, const ref<std::string> &
|
|||
/* Lock the output path. But don't lock if we're being called
|
||||
from a build hook (whose parent process already acquired a
|
||||
lock on this path). */
|
||||
static auto locksHeld = tokenizeString<PathSet>(getEnv("NIX_HELD_LOCKS"));
|
||||
if (!locksHeld.count(info.path))
|
||||
outputLock.lockPaths({realPath});
|
||||
|
||||
|
|
|
@ -104,6 +104,9 @@ private:
|
|||
|
||||
public:
|
||||
|
||||
// Hack for build-remote.cc.
|
||||
PathSet locksHeld = tokenizeString<PathSet>(getEnv("NIX_HELD_LOCKS"));
|
||||
|
||||
/* Initialise the local store, upgrading the schema if
|
||||
necessary. */
|
||||
LocalStore(const Params & params);
|
||||
|
|
Loading…
Reference in a new issue