hydra-queue-runner: Fix assertion failure
[?]
Nov 2, 2016, 11:41 AM
KPKXKDNGVWQSM5D5ODNWZBBQDE3YT32CEAWIEYND62P26XHPKGTACDependencies
- [2]
LVQXQIYAKill active build steps when builds are cancelled - [3]
EYR3EW6JKeep stats for the Hydra auto scaler - [4]
MHVIT4JYSplit hydra-queue-runner.cc more - [5]
KQ3EGUQYAdd some instrumentation to keep track of dispatcher cost - [6]
B2L4T3X6Sync with Nix - [7]
TTBLPQAJKeep track of wait time per system type - [*]
HJOEIMLRRefactor
Change contents
- replacement in src/hydra-queue-runner/builder.cc at line 16
reservation->threadId = pthread_self();auto activeStep = std::make_shared<ActiveStep>();activeStep->step = reservation->step;activeStep->threadId = pthread_self();activeSteps_.lock()->insert(activeStep); - edit in src/hydra-queue-runner/builder.cc at line 21
activeSteps_.lock()->insert(reservation); - replacement in src/hydra-queue-runner/builder.cc at line 22
reservation->threadId = -1;activeSteps_.lock()->erase(reservation);activeStep->threadId = -1;activeSteps_.lock()->erase(activeStep); - edit in src/hydra-queue-runner/state.hh at line 373
pthread_t threadId = 0;bool cancelled = false; - replacement in src/hydra-queue-runner/state.hh at line 377
nix::Sync<std::set<std::shared_ptr<MachineReservation>>> activeSteps_;struct ActiveStep{Step::ptr step;pthread_t threadId;}; - edit in src/hydra-queue-runner/state.hh at line 383
nix::Sync<std::set<std::shared_ptr<ActiveStep>>> activeSteps_;