Merge pull request #4262 from jbaum98/master

Fix deadlock in nix-store when max-connections=1
This commit is contained in:
Eelco Dolstra 2020-11-16 10:20:36 +01:00 committed by GitHub
commit 0d6419ad87
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -409,10 +409,10 @@ StorePathSet RemoteStore::queryValidDerivers(const StorePath & path)
StorePathSet RemoteStore::queryDerivationOutputs(const StorePath & path) StorePathSet RemoteStore::queryDerivationOutputs(const StorePath & path)
{ {
auto conn(getConnection()); if (GET_PROTOCOL_MINOR(getProtocol()) >= 0x16) {
if (GET_PROTOCOL_MINOR(conn->daemonVersion) >= 0x16) {
return Store::queryDerivationOutputs(path); return Store::queryDerivationOutputs(path);
} }
auto conn(getConnection());
conn->to << wopQueryDerivationOutputs << printStorePath(path); conn->to << wopQueryDerivationOutputs << printStorePath(path);
conn.processStderr(); conn.processStderr();
return worker_proto::read(*this, conn->from, Phantom<StorePathSet> {}); return worker_proto::read(*this, conn->from, Phantom<StorePathSet> {});