Commit message (Collapse) | Author | Age | |
---|---|---|---|
* | Exclude .tmp files when checking for build logs | Christopher Baines | 2020-10-10 |
| | |||
* | Guard against receiving parts of build log files | Christopher Baines | 2020-10-10 |
| | |||
* | Fix missing bad-request procedure | Christopher Baines | 2020-10-07 |
| | |||
* | Separate the agent messaging server and client code | Christopher Baines | 2020-10-07 |
| | | | | So that the client part doesn't depend on fibers. | ||
* | Split the fibers utils from the main utils module | Christopher Baines | 2020-10-07 |
| | | | | | To start making it possible to use the agent, without having to load anything related to fibers (as it doesn't work on the hurd yet). | ||
* | Guard against Guix Data Service requests hanging | Christopher Baines | 2020-10-02 |
| | | | | | I don't know if this is happening, but the hooks are getting stuck, and this might be a cause. | ||
* | Track the number of builds the allocator is considering | Christopher Baines | 2020-09-23 |
| | |||
* | Fix assq-ref when handling build results | Christopher Baines | 2020-09-20 |
| | |||
* | Work around Guile not printing backtraces without failing | Christopher Baines | 2020-09-18 |
| | | | | | | | | | | | | For some exceptions raised in worker threads, seemingly those that come from guile-sqlite3, Guile can't print the backtrace without erroring itself [1]. Work around Guile not being helpful by just printing out the backtrace, that Guile may fail to print, after the details of the exception. At least then there's something informative in the output. 1: In procedure string->number: Wrong type argument in position 1 (expecting string): #f | ||
* | Simplify sqlite transactionality | Christopher Baines | 2020-09-18 |
| | | | | Remove one layer of exception handling, as I don't think it was adding much. | ||
* | Better describe the default hooks | Christopher Baines | 2020-09-17 |
| | |||
* | Create a run-coordinator-service procedure | Christopher Baines | 2020-09-16 |
| | | | | | | This is moving in the direction of not having to use the script to start the service. I think for a Guix service definition, being able to specify some Guile code directly will be better. | ||
* | Move more coordinator service startup out of the script | Christopher Baines | 2020-09-16 |
| | |||
* | Don't patch fibers, just use the different procedure directly | Christopher Baines | 2020-09-16 |
| | |||
* | Extract call-with-sigint to the utils module | Christopher Baines | 2020-09-16 |
| | |||
* | Fix the sqitch --chdir argument for installations | Christopher Baines | 2020-09-16 |
| | |||
* | Fix insert-derivation-and-return-outputs | Christopher Baines | 2020-09-13 |
| | |||
* | Use the #:namespace argument for metric registries | Christopher Baines | 2020-08-31 |
| | |||
* | Use the guile-prometheus library for the metrics | Christopher Baines | 2020-08-31 |
| | | | | Which was extracted from the Guix Build Coordinator. | ||
* | Switch to using guile-lzlib | Christopher Baines | 2020-08-31 |
| | | | | Rather than the lzlib module within Guix. | ||
* | Change how agents handle store connections | Christopher Baines | 2020-08-26 |
| | | | | | Keep a connection open for longer, to allow for doing things like registering gc roots. | ||
* | Fix passing through the ignore-if-build-for-derivation-exists parameter | Christopher Baines | 2020-08-26 |
| | |||
* | Store if the derivation is a fixed output derivation | Christopher Baines | 2020-08-26 |
| | | | | | | | | | | | | As this information will come in useful when working out how to handle builds for fixed output derivations. Specifically, I want to make it configurable whether to add builds for fixed output derivations if a build already exists for the output, but the derivation is different. Currently, different fixed output derivations can be ignored but it's not possible to just avoid adding more builds for non fixed output derivations while adding builds when fixed output derivations change. This new information will help enable that. | ||
* | Use valid-path? rather than file-exists? | Christopher Baines | 2020-08-15 |
| | | | | | Because items can be in the store but not be valid. This should help with issues where the build can't start, but all the items show up in the store. | ||
* | Fix builds missing from the allocation plan | Christopher Baines | 2020-07-06 |
| | | | | | | | Previously builds were only considered if for the derivation, all the inputs had successful builds. However, this only accounted for inputs directly matching the derivation, not other derivations that also provided the same output. This commit fixes that. | ||
* | Remove another backtick that snuck in | Christopher Baines | 2020-07-04 |
| | |||
* | Remove backtick that snuck in | Christopher Baines | 2020-07-04 |
| | |||
* | Tweak the related-derivations-with-no-build-for-outputs for speed | Christopher Baines | 2020-07-04 |
| | |||
* | Don't skip inserting builds where the system doesn't match | Christopher Baines | 2020-07-04 |
| | | | | | | | Previously, some builds where skipped for things like fixed output derivations. If a aarch64-linux build already existed, the x86_64-linux build for the same output wouldn't be created. This has delayed some builds, because they're unnecessarily waiting. | ||
* | Add datastore-list-builds-for-output-and-system | Christopher Baines | 2020-07-04 |
| | |||
* | Factor in which systems agents fetch in the allocation process | Christopher Baines | 2020-07-03 |
| | |||
* | Record the systems fetched for agents | Christopher Baines | 2020-07-03 |
| | | | | | So that this information can be used by the allocator. Because that's expected, also trigger allocating builds if the systems for an agent changes. | ||
* | Add datastore-find-build-derivation-system | Christopher Baines | 2020-07-03 |
| | |||
* | Record what systems agents fetch builds for | Christopher Baines | 2020-07-03 |
| | | | | | This can then be used by allocators to avoid allocating builds to agents that they're never going to fetch. | ||
* | Add a way of sending events for all builds to the Guix Data Service | Christopher Baines | 2020-07-01 |
| | | | | To backfill the data, where the hooks haven't been used. | ||
* | Add datastore-for-each-build | Christopher Baines | 2020-07-01 |
| | |||
* | Add hooks to send events to the Guix Data Service | Christopher Baines | 2020-07-01 |
| | |||
* | Add a function to notify the Guix Data Service about build events | Christopher Baines | 2020-07-01 |
| | |||
* | Improve error reporting within the sqlite threads | Christopher Baines | 2020-07-01 |
| | |||
* | Add a hook for when a build starts on an agent | Christopher Baines | 2020-07-01 |
| | |||
* | Add a hook for when builds are submitted | Christopher Baines | 2020-07-01 |
| | |||
* | Support tracking the end time of builds | Christopher Baines | 2020-07-01 |
| | |||
* | Support storing when builds start | Christopher Baines | 2020-07-01 |
| | | | | | | | This isn't particularly accurate, what's actually being stored is the current time when the record is inserted in to the coordinator database, but that should happen just before the agent starts the build, so hopefully that's good enough. | ||
* | Support storing when builds are created | Christopher Baines | 2020-07-01 |
| | |||
* | Add a timeout for allocations | Christopher Baines | 2020-06-25 |
| | | | | As I think the allocation process could be hanging for some reason. | ||
* | Make the build show-blocking output more stable | Christopher Baines | 2020-06-23 |
| | |||
* | Simplify transaction handling in the sqlite datastore | Christopher Baines | 2020-06-20 |
| | |||
* | Pass through the db connection in datastore-call-with-transaction | Christopher Baines | 2020-06-20 |
| | |||
* | Fetch the derivation ordered allocator data in a transaction | Christopher Baines | 2020-06-20 |
| | | | | To try and avoid the data from the two queries being inconsistent. | ||
* | Add datastore-call-with-transaction | Christopher Baines | 2020-06-20 |
| |