From 274933c729ef00f266948aded71eac39806c8dde Mon Sep 17 00:00:00 2001 From: eldritch horrors Date: Mon, 17 Mar 2025 15:45:27 +0100 Subject: [PATCH] n-e-j: add missing aio block on Store::queryMissing Change-Id: I7c2350d2bf0d729d26f67a2b2181b2ebc7efb4f8 --- subprojects/nix-eval-jobs/src/drv.cc | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/subprojects/nix-eval-jobs/src/drv.cc b/subprojects/nix-eval-jobs/src/drv.cc index 240465123..4c4b23a9c 100644 --- a/subprojects/nix-eval-jobs/src/drv.cc +++ b/subprojects/nix-eval-jobs/src/drv.cc @@ -22,9 +22,11 @@ #include "drv.hh" #include "eval-args.hh" +#include "lix/libutil/async.hh" static bool -queryIsCached(nix::Store &store, +queryIsCached(nix::AsyncIoRoot &aio, + nix::Store &store, std::map> &outputs) { uint64_t downloadSize, narSize; nix::StorePathSet willBuild, willSubstitute, unknown; @@ -36,8 +38,8 @@ queryIsCached(nix::Store &store, } } - store.queryMissing(toDerivedPaths(paths), willBuild, willSubstitute, - unknown, downloadSize, narSize); + aio.blockOn(store.queryMissing(toDerivedPaths(paths), willBuild, willSubstitute, + unknown, downloadSize, narSize)); return willBuild.empty() && unknown.empty(); } @@ -91,7 +93,7 @@ Drv::Drv(std::string &attrPath, nix::EvalState &state, nix::DrvInfo &drvInfo, meta = meta_; } if (args.checkCacheStatus) { - cacheStatus = queryIsCached(*localStore, outputs) + cacheStatus = queryIsCached(state.aio, *localStore, outputs) ? Drv::CacheStatus::Cached : Drv::CacheStatus::Uncached; } else {