aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* 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
|
* Add a couple of roadmap itemsChristopher Baines2022-02-09
|
* 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
|
* Prioritise aarch64-linux builds over armhf-linux buildsChristopher Baines2022-02-02
| | | | | It's not great that this script hardcodes priorities, but since it does, just update it.
* Move priority-for-derivationChristopher Baines2022-02-02
| | | | So that it's easier to incorporate the options into this.
* 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.
* Add LIMIT 1 to a couple of queriesChristopher Baines2022-01-07
| | | | Where only the first row is checked for.
* Fix insert-derivation-outputs returning the wrong idsChristopher Baines2022-01-04
| | | | | It's expected to return an alist containing the derivation output ids, not the output ids.
* Don't create the guix-build-coordinator script for a minimal buildChristopher Baines2022-01-02
|
* Hack the autotools stuff to try and allow minimal buildsChristopher Baines2022-01-02
| | | | | | | | | No idea what this stuff is, but modify it with the intent of allowing building just the sources related to the agent, if guile-fibers is missing. This should make it easier to avoid problems in Guix where things like guile-fibers are currently broken for aarch64-linux, and also avoid having a load of perl dependencies for the agent, which doesn't use sqitch.
* Make some SQLite configuration tweaksChristopher Baines2021-12-30
| | | | I think these help to improve performance, no concrete data through.