Commit message (Collapse) | Author | Age | ||
---|---|---|---|---|
... | ||||
* | 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 | |
| | ||||
* | Make worker threads compatible with multiple return values | Christopher Baines | 2020-06-20 | |
| | ||||
* | Don't consider allocated builds when planning | Christopher Baines | 2020-06-19 | |
| | | | | | As it makes the plan harder to read, given it contains builds which are underway. | |||
* | Add missing GROUP BY to query | Christopher Baines | 2020-06-19 | |
| | ||||
* | Report builds by derivation system | Christopher Baines | 2020-06-19 | |
| | ||||
* | Handle the system more explicitly when fetching builds | Christopher Baines | 2020-06-19 | |
| | | | | Also support fetching builds for specific systems from the Guix Data Service. | |||
* | Guard against exceptions in the allocator thread | Christopher Baines | 2020-06-19 | |
| | ||||
* | Try and guard against exceptions in the hook processing threads | Christopher Baines | 2020-06-19 | |
| | ||||
* | Add missing %random-state for the with-timeout syntax | Christopher Baines | 2020-06-19 | |
| | ||||
* | Add a timeout when fetching build inputs | Christopher Baines | 2020-06-19 | |
| | | | | As this seems like it can hang. | |||
* | Add with-timeout to utils | Christopher Baines | 2020-06-19 | |
| | ||||
* | Add in some extra information about worker thread exceptions | Christopher Baines | 2020-06-01 | |
| | ||||
* | Fix the builds with blocking counts | Christopher Baines | 2020-06-01 | |
| | | | | | Don't just count the builds for directly related derivations, but indirectly related ones as well. | |||
* | Support adding tags to builds | Christopher Baines | 2020-05-31 | |
| | ||||
* | Improve worker exception handling | Christopher Baines | 2020-05-31 | |
| | ||||
* | Implement more processing on metric labels and values | Christopher Baines | 2020-05-26 | |
| | | | | This helps where symbols and strings are mixed. | |||
* | Use one thread for each type of hook event | Christopher Baines | 2020-05-25 | |
| | | | | | This will allow some parallel processing of hook events, at least those of different types. | |||
* | Use mutexes for the metrics to add some thread safety | Christopher Baines | 2020-05-25 | |
| | | | | This means they can be used in multiple threads. | |||
* | Improve the job processing output | Christopher Baines | 2020-05-24 | |
| | | | | | Prefix more output with the build id, which helps when multiple builds are happening in parallel. | |||
* | Handle build allocation in a transaction | Christopher Baines | 2020-05-24 | |
| | | | | | | To avoid errors associated with trying to allocated a build that's already been allocated. Also, guard against allocating a build to an agent if it's already been allocated a build for a matching output. | |||
* | Unlock the mutex when deq! fails unexpectedly | Christopher Baines | 2020-05-24 | |
| | | | | So that it can be locked again. | |||
* | Guard against deq! erroring because the queue is empty | Christopher Baines | 2020-05-24 | |
| | | | | I'm not sure how this happens, but it seems to, so handle it. | |||
* | Increase waiting time for log files | Christopher Baines | 2020-05-24 | |
| |