createStep(): Cache finished derivations
[?]
Jun 23, 2015, 1:25 AM
4D7CHQ345ZSI52GPNW73JOYALRLFEGI2YUDWKG4UCDE55MO5LQ2ACDependencies
- [2]
HUUZFPPKFix race between the queue monitor and the builder threads - [3]
24BMQDZAStart of single-process hydra-queue-runner - [4]
2IQRXLWESupport cancelling builds - [5]
22LDPAIPCheck non-runnable steps for unsupported system type - [6]
NJJ7H64SVery basic multi-threaded queue runner - [7]
HLSHCK3CSupport requiredSystemFeatures - [8]
ENXUSMSVMake concurrency more robust - [9]
GKZN4UV7Make the queue monitor more robust, and better debug output - [10]
JAUB2FT5getQueuedBuilds(): Handle dependent builds first
Change contents
- replacement in src/hydra-queue-runner/hydra-queue-runner.cc at line 307
Build::ptr referringBuild, Step::ptr referringStep,Build::ptr referringBuild, Step::ptr referringStep, std::set<Path> & finishedDrvs, - replacement in src/hydra-queue-runner/hydra-queue-runner.cc at line 568
Step::ptr step = createStep(store, build->drvPath, build, 0, newSteps, newRunnable);std::set<Path> finishedDrvs; // FIXME: re-use?Step::ptr step = createStep(store, build->drvPath, build, 0, finishedDrvs, newSteps, newRunnable); - replacement in src/hydra-queue-runner/hydra-queue-runner.cc at line 718
Build::ptr referringBuild, Step::ptr referringStep,Build::ptr referringBuild, Step::ptr referringStep, std::set<Path> & finishedDrvs, - edit in src/hydra-queue-runner/hydra-queue-runner.cc at line 721
if (finishedDrvs.find(drvPath) != finishedDrvs.end()) return 0; - replacement in src/hydra-queue-runner/hydra-queue-runner.cc at line 789
if (valid) return 0;if (valid) {finishedDrvs.insert(drvPath);return 0;} - replacement in src/hydra-queue-runner/hydra-queue-runner.cc at line 800
auto dep = createStep(store, i.first, 0, step, newSteps, newRunnable);auto dep = createStep(store, i.first, 0, step, finishedDrvs, newSteps, newRunnable);