Commit message (Collapse) | Author | Age | |
---|---|---|---|
* | Log the time for parts of the datastore metric initialisation | Christopher Baines | 2022-10-21 |
| | |||
* | Guard against canceling builds required by others | Christopher Baines | 2022-10-11 |
| | |||
* | Support listing builds and including/excluding builds by relationship | Christopher Baines | 2022-10-11 |
| | | | | | This is to help cancel builds, but where you want to avoid builds that are still needed by others. | ||
* | Add system information in to listing the build allocation plan | Christopher Baines | 2022-10-10 |
| | |||
* | Include priority information in the allocation plan output | Christopher Baines | 2022-10-09 |
| | | | | Also switch derivation-name to use an underscore. | ||
* | Improve listing agent build allocation plans | Christopher Baines | 2022-10-09 |
| | |||
* | Send more information on derivation outputs to the Guix Data Service | Christopher Baines | 2022-07-07 |
| | | | | | | This will enable it to join builds to derivations, even if it doesn't know about the derivation being built, since it'll be able to match the outputs with other derivations it knows about. | ||
* | Record the details of derivation outputs | Christopher Baines | 2022-07-07 |
| | | | | | | | I believe this will be useful when linking builds to other services, like the Guix Data Service, since this information might be useful when joining up the derivation being built to other derivations through the details of the outputs produced. | ||
* | Update the derived priorities when a build is cancelled | Christopher Baines | 2022-07-07 |
| | |||
* | Support updating the priorities of builds | Christopher Baines | 2022-07-07 |
| | |||
* | Support listing builds by priority | Christopher Baines | 2022-07-07 |
| | |||
* | Support processing hook events in parallel | Christopher Baines | 2022-06-30 |
| | | | | | | | | | | Forcing hooks to be sequential simplifies them, and the implementation, but it doesn't always scale well. I'm particularly thinking about the build-submitted hook and built-success hooks, the processing of which can back up if there's lots of builds being submitted or finishing successfully. This new functionality allows hooks to be processed in parallel, which should allow to manage this more effectively. | ||
* | Guard against inserting unnecessary related builds | Christopher Baines | 2022-04-23 |
| | |||
* | Take the max of the derived priority and priority | Christopher Baines | 2022-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 them | Christopher Baines | 2022-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. | ||
* | Fix binding the agent_id when querying for output conflicts | Christopher Baines | 2022-02-02 |
| | |||
* | Rewrite datastore-fetch-builds-to-allocate | Christopher Baines | 2022-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 plan | Christopher Baines | 2022-01-31 |
| | | | | | I believe this was changed in error in f70c97b6c79b9e91b16dfa9685fef6985682d6f0. | ||
* | More efficiently filter and select builds in the allocator | Christopher Baines | 2022-01-31 |
| | | | | Specifically the derivation ordered allocator. | ||
* | Don't use the SQLite shared cache | Christopher Baines | 2022-01-19 |
| | | | | | This seems to cause some locking issues when lots of activity is happening, disable this until it can be investigated further. | ||
* | Switch around some SQLite stuff | Christopher Baines | 2022-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 statement | Christopher Baines | 2022-01-19 |
| | |||
* | Improve the speed of initialising metrics | Christopher Baines | 2022-01-19 |
| | | | | | Do the allocation metrics at the start of the relevant thread, and do the initialisation in parallel via fibers. | ||
* | Add some extra delay logging | Christopher Baines | 2022-01-12 |
| | |||
* | Fix the get-derived-priority query | Christopher Baines | 2022-01-12 |
| | | | | It was just broken before. | ||
* | Add some delay logging when inserting derivations | Christopher Baines | 2022-01-11 |
| | | | | As this could benefit from a little optimising. | ||
* | Remove use of last-insert-rowid in insert-build | Christopher Baines | 2022-01-07 |
| | | | | This can be done through RETURNING now. | ||
* | Skip updating other build priorities for some builds | Christopher Baines | 2022-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 queries | Christopher Baines | 2022-01-07 |
| | | | | Where only the first row is checked for. | ||
* | Fix insert-derivation-outputs returning the wrong ids | Christopher Baines | 2022-01-04 |
| | | | | | It's expected to return an alist containing the derivation output ids, not the output ids. | ||
* | Make some SQLite configuration tweaks | Christopher Baines | 2021-12-30 |
| | | | | I think these help to improve performance, no concrete data through. | ||
* | Optimise inserting derivations | Christopher Baines | 2021-12-30 |
| | | | | | | Avoid some queries by just moving around the values being queried for better. Also cache the outputs for a derivation so that doesn't have to be looked up. | ||
* | Fix unprocessed_builds_with_derived_priorities | Christopher Baines | 2021-12-22 |
| | | | | A couple of the queries were wrong, this fixes it. | ||
* | Log delays for procedures involved in handling build results | Christopher Baines | 2021-12-20 |
| | |||
* | Log delays in fetch builds to allocate | Christopher Baines | 2021-12-20 |
| | |||
* | Reduce the time in the transaction when replacing the allocation plan | Christopher Baines | 2021-12-20 |
| | |||
* | Log delay from select allocated builds | Christopher Baines | 2021-12-20 |
| | |||
* | Log delays for entering transactions | Christopher Baines | 2021-12-20 |
| | |||
* | Log delays with datastore-insert-build | Christopher Baines | 2021-11-20 |
| | |||
* | Improve delay logging in datastore-call-with-transaction | Christopher Baines | 2021-11-20 |
| | | | | Make sure to log the delay in the calling thread. | ||
* | Log delays in insert-derivation-and-return-outputs | Christopher Baines | 2021-11-20 |
| | | | | As I've seen this be quite slow. | ||
* | Use prepared statements when inserting derivations | Christopher Baines | 2021-11-20 |
| | | | | As I hope this might be a little faster, plus it's also neater. | ||
* | Always reset the statement in db-output->output-id | Christopher Baines | 2021-11-20 |
| | |||
* | Monitor a few more sqlite related procedures | Christopher Baines | 2021-11-18 |
| | |||
* | Improve the datastore-call-with-transaction delay logging | Christopher Baines | 2021-11-18 |
| | | | | Associate the delay with the passed proc. | ||
* | Add delay logging to fetching builds | Christopher Baines | 2021-11-17 |
| | | | | As this appears to be a bit too slow. | ||
* | Track delays for a couple of sqlite datastore operations | Christopher Baines | 2021-11-16 |
| | |||
* | Support activating and deactivating agents | Christopher Baines | 2021-11-13 |
| | | | | | | | | | Not sure these are the best terms to use, but I want a way to pause agents, effectively removing them from the build allocation plan. This is mostly motivated by the lack of disk space on bayfront, as deactivating agents provides a way to stop the system from filling up with builds, but I think there's more general uses as well. | ||
* | Report the active status of agents when listing them | Christopher Baines | 2021-11-12 |
| | |||
* | Return the agent names when listing agents | Christopher Baines | 2021-11-12 |
| |