Acquire the send lock only while actually sending
[?]
Sep 1, 2017, 2:28 PM
FJCKDJKBQ3KRQEAQ2GX2HIPLA3NEXBJ4BB4MA6PYDEW7ZRHWAZJQCDependencies
- [2]
UYDRSHYRDon't wait forever to acquire the send lock - [3]
DKJFD6JNProcess Nix API changes - [4]
FITVNQ2SKeep track of the time we spend copying to/from build machines - [5]
DIEY5USNKeep better bytesReceived/bytesSent stats - [6]
5AIYUMTBBasic remote building - [7]
BYVRA54QTemporarily disable machines on any exception, not just connection failures - [8]
73YR46NJhydra-queue-runner: Write directly to a binary cache - [9]
RSISSEU6Enable substitution on the build machines - [10]
CNLNT3T4Allow only 1 thread to send a closure to a given machine at the same time - [11]
6EO3HVNAMerge remote-tracking branch 'origin/master' into binary-cache - [12]
XCDTFZUYhydra-queue-runner: Fix build - [*]
6TY4LNHHFinish copyClosure - [*]
NAYQT2GThydra-queue-runner: Use cmdBuildDerivation
Change contents
- replacement in src/hydra-queue-runner/build-remote.cc at line 80
static void copyClosureTo(ref<Store> destStore,static void copyClosureTo(std::timed_mutex & sendMutex, ref<Store> destStore, - edit in src/hydra-queue-runner/build-remote.cc at line 110[14.286][15.65]
std::unique_lock<std::timed_mutex> sendLock(sendMutex,std::chrono::seconds(600)); - edit in src/hydra-queue-runner/build-remote.cc at line 235
std::unique_lock<std::timed_mutex> sendLock(machine->state->sendLock, std::chrono::seconds(600)); - replacement in src/hydra-queue-runner/build-remote.cc at line 241
copyClosureTo(destStore, from, to, inputs, true);copyClosureTo(machine->state->sendLock, destStore, from, to, inputs, true);