aboutsummaryrefslogtreecommitdiff
path: root/guix-build-coordinator
Commit message (Collapse)AuthorAge
...
* Use the substitutes channel for reading derivationsChristopher Baines2022-05-22
| | | | | I think the use of gnutls for the network requests, or the network requests themselves may be causing fibers to block.
* Add delay logging around submitting buildsChristopher Baines2022-05-22
|
* Refactor build-for-output-already-exists? to only call read-drv onceChristopher Baines2022-05-22
| | | | This should have effectively happened due to caching, but make it explicit.
* Fix spacing in a logging messageChristopher Baines2022-05-21
|
* Remove the timeout from the allocation processChristopher Baines2022-05-21
| | | | It's quick and always finishes, so it doesn't need one any longer.
* Fix the guix-data-service request timeoutChristopher Baines2022-05-21
| | | | Which was 30,000 seconds, rather than 30 seconds.
* Add more logging and timeouts around fetching inputsChristopher Baines2022-05-21
|
* Make the derivation cache a doubly weak hash tableChristopher Baines2022-05-19
| | | | As I have a suspicion that the weak key hash table is keeping stuff around.
* Avoid substituting derivations when builds are submittedChristopher Baines2022-05-15
| | | | | When the derivation substitute URLs are known. This avoids having to add the derivation to the store, which can be blocked by garbage collection.
* Add a way of reading derivations directly from substitutesChristopher Baines2022-05-15
| | | | | This avoids having to add the derivations to the store which can be blocked by garbage collection.
* Increase the parallelism of the substitutes thread channelChristopher Baines2022-04-28
| | | | As this looks to be a bottleneck.
* Guard against inserting unnecessary related buildsChristopher Baines2022-04-23
|
* Take the max of the derived priority and priorityChristopher Baines2022-04-23
| | | | | | I believe this fixes an issue where the derived priority could be lower than the priority, if the build being inserted isn't at the edge of the derivation graph.
* Guarantee the order of related derivations when listing themChristopher Baines2022-04-23
| | | | | | | Since I believe this is important when inserting builds, as for the derived priorities to be computed correctly, the derivations closet in the graph need to be processed first, so that their derived priority informs that of builds that depend on them.
* Add some extra logging when an output has been submittedChristopher Baines2022-04-09
|
* Remove double retry-on-error for submitting outputsChristopher Baines2022-04-09
| | | | As submit-output retries on failure.
* Move retry in submit-outputChristopher Baines2022-04-09
|
* Add a timeout for submitting outputsChristopher Baines2022-04-09
|
* Fix timeout when fetching inputsChristopher Baines2022-04-08
| | | | The timeout is in seconds, not milliseconds.
* Simplify with-timeoutChristopher Baines2022-04-08
|
* Switch to guile-fibers@1.1Christopher Baines2022-02-09
| | | | | I think the main change required is just to stop accessing the now missing current-fiber parameter.
* Allow overriding the success publish hook skip publishing behaviourChristopher Baines2022-02-04
| | | | | | This means that when using the nar-herder, you can get it to check for the presence of the nar in the database, rather than relying on the narinfo on the disk.
* Only use GC protection when gnutls won't internally retryChristopher Baines2022-02-04
|
* Fix binding the agent_id when querying for output conflictsChristopher Baines2022-02-02
|
* Fix the threshold for metrics delay loggingChristopher Baines2022-02-01
|
* Rewrite datastore-fetch-builds-to-allocateChristopher Baines2022-02-01
| | | | | | | To avoid querying all of the builds in the allocation plan for the agent. This also fixes a regression with the ordering introduced in 5d6eb372ecda14df0d678a75194c607635095d04.
* Fix the selecting of builds from the allocation planChristopher Baines2022-01-31
| | | | | I believe this was changed in error in f70c97b6c79b9e91b16dfa9685fef6985682d6f0.
* More efficiently filter and select builds in the allocatorChristopher Baines2022-01-31
| | | | Specifically the derivation ordered allocator.
* Add extra logging around the last failed attemptChristopher Baines2022-01-20
| | | | To make it easier to find the backtraces.
* Fix retry logging messageChristopher Baines2022-01-20
|
* Use the chunked-input-ended-prematurely exception type properlyChristopher Baines2022-01-20
|
* Unwind on hook logging exceptionsChristopher Baines2022-01-20
| | | | To make sure they're handled.
* Tweak metrics delay loggingChristopher Baines2022-01-20
| | | | | Just instrument the update-managed-metrics! function, and move some code around so this is clearer in the logs.
* Fix log messageChristopher Baines2022-01-19
|
* Tweak retrying code to not catch the exception on the last tryChristopher Baines2022-01-19
| | | | This might make it easier to see backtraces.
* Don't use the SQLite shared cacheChristopher Baines2022-01-19
| | | | | This seems to cause some locking issues when lots of activity is happening, disable this until it can be investigated further.
* Add some extra exception handling around processing hook eventsChristopher Baines2022-01-19
| | | | | As hook processing can get stuck if one of the weird "conversion to port encoding failed" errors occurs.
* Switch around some SQLite stuffChristopher Baines2022-01-19
| | | | | | | | Use SQLITE_OPEN_SHAREDCACHE for all connections, and create the writer thread first to allow this. I think this addresses some weridness I was seeing locally, where hooks would get processed multiple times.
* Delete processed hook events using a prepared statementChristopher Baines2022-01-19
|
* Actually increment the build counts when submitting buildsChristopher Baines2022-01-19
|
* Improve the speed of initialising metricsChristopher Baines2022-01-19
| | | | | Do the allocation metrics at the start of the relevant thread, and do the initialisation in parallel via fibers.
* Add letpar&Christopher Baines2022-01-19
| | | | Mostly copied from the Guix Data Service.
* Don't require reading the derivation after the build has happenedChristopher Baines2022-01-19
| | | | As it might have been garbage collected.
* Add some extra delay loggingChristopher Baines2022-01-12
|
* Fix the get-derived-priority queryChristopher Baines2022-01-12
| | | | It was just broken before.
* Add some delay logging when inserting derivationsChristopher Baines2022-01-11
| | | | As this could benefit from a little optimising.
* Add correct guard to deleting compressed outputsChristopher Baines2022-01-09
|
* Move UUID generation out of the insert builds transactionChristopher Baines2022-01-07
|
* Remove use of last-insert-rowid in insert-buildChristopher Baines2022-01-07
| | | | This can be done through RETURNING now.
* Skip updating other build priorities for some buildsChristopher Baines2022-01-07
| | | | | | | | The builds submitted to ensure all related derivation outputs have builds. Submitting these builds won't cause the priority of any related builds to be updated, since they have a priority of 0, so this expensive part of submitting the builds can be skipped.