Commit message (Collapse) | Author | Age | |
---|---|---|---|
* | Avoid some threads and locks when running on the hurd | Christopher Baines | 2021-02-15 |
| | | | | I've see the process hang on the hurd, and I think this might help. | ||
* | Add a log message at the end of a build | Christopher Baines | 2021-02-14 |
| | | | | So it's clearer that it's ended. | ||
* | Fix use of assoc | Christopher Baines | 2021-02-12 |
| | |||
* | Allow agents to skip submitting build outputs | Christopher Baines | 2021-01-16 |
| | | | | | | | | | If the coordinator isn't going to use the outputs, because they've already been built for example, then save some time by not processing and submitting them. This will probably need to get more configurable on the coordinator side in the future. | ||
* | Start migrating derivation-inputs to derivation_inputs | Christopher Baines | 2021-01-16 |
| | | | | As I think underscores are more idiomatic in JSON. | ||
* | Rework the agent messaging modules | Christopher Baines | 2021-01-15 |
| | |||
* | Use methods for the agent messaging | Christopher Baines | 2021-01-15 |
| | | | | This will allow adding more agent messaging approaches. | ||
* | Tweak agent queue timings | Christopher Baines | 2021-01-12 |
| | | | | | Wait slightly longer between starting new threads, and give more time for new jobs to arrive for running threads. | ||
* | Work on the agent thread handling some more | Christopher Baines | 2021-01-06 |
| | | | | | Various changes, hopefully improvements. Inactive threads should stop promptly, and new threads should start promptly when new builds arrive. | ||
* | Give more time for substitute downloads | Christopher Baines | 2021-01-03 |
| | | | | | By the agent. Turns out 10 minutes isn't long enough for some large and slow downloads. | ||
* | Fix the stdin based status display when running under the shepherd | Christopher Baines | 2021-01-03 |
| | | | | | The current input port is #<input: file 0>, which gives eof when read from, so detect this and stop trying to read from it. | ||
* | Add debugging code for the agent status output | Christopher Baines | 2021-01-03 |
| | | | | As this doesn't seem to be working properly when running under the shepherd. | ||
* | Ensure the agent fetches builds if it doesn't have any | Christopher Baines | 2021-01-02 |
| | |||
* | Make sure to have the agent try fetching builds | Christopher Baines | 2021-01-02 |
| | | | | Even if there are no worker threads running. | ||
* | Tune agent retrying | Christopher Baines | 2021-01-01 |
| | | | | So that the agent spends less time waiting. | ||
* | Add missing suffix to an agent log line | Christopher Baines | 2020-12-31 |
| | |||
* | Add more information to the agent info output | Christopher Baines | 2020-12-31 |
| | |||
* | Display useful information about agent state | Christopher Baines | 2020-12-31 |
| | | | | When the agent receives input or SIGUSR1. | ||
* | Have the agent fetch builds based on the current number of threads | Christopher Baines | 2020-12-31 |
| | | | | | | This means that if the agent is only processing 2 builds at a time, it'll only fetch up to two builds, rather than whatever maximum it would fetch. This avoids fetching builds unnecessarily. | ||
* | Rate limit the agent starting threads to process builds | Christopher Baines | 2020-12-31 |
| | | | | | | | | | | Allow rate limiting new worker threads starting in the agent. Currently if the running jobs is limited by system load, lots of jobs start, the load goes up, then the jobs gradually finish, and once the load decreases, lots of jobs start again, and the cycle repeats. Rate limiting the starting of new threads might help to soften the jobs all starting at once. | ||
* | Avoid fetching builds when they won't start immediately | Christopher Baines | 2020-12-30 |
| | |||
* | Only run one build when the load is high | Christopher Baines | 2020-12-30 |
| | | | | | This should avoid behaviour that I've observed where sometimes no builds are running, because the load is high. | ||
* | Further tweak exception handling around has-substitutes-no-cache? | Christopher Baines | 2020-12-24 |
| | |||
* | Improve some logging | Christopher Baines | 2020-12-24 |
| | | | | I think exceptions are happening, but the existing logging isn't working. | ||
* | Include the current-load in the holding build start message | Christopher Baines | 2020-12-23 |
| | |||
* | Fix issue with the change of the load average period | Christopher Baines | 2020-12-23 |
| | |||
* | Switch to using the 1 minute load average | Christopher Baines | 2020-12-23 |
| | | | | So that it's more responsive. | ||
* | Avoid starting builds if the system load is high | Christopher Baines | 2020-12-23 |
| | |||
* | Improve the guix-daemon claims a substitute is unavailable messages | Christopher Baines | 2020-12-23 |
| | | | | Include the substitute servers that should be providing the substitute. | ||
* | Implement build cancelation | Christopher Baines | 2020-12-16 |
| | |||
* | Guard against a weird state for missing build inputs | Christopher Baines | 2020-12-15 |
| | | | | | | Where there are missing files, but find-missing-substitutes-for-output doesn't return anything. I think this can happen when the substitutes should be available, but there was an error when fetching them. | ||
* | Add missing lgr argument | Christopher Baines | 2020-12-10 |
| | |||
* | Start using Prometheus metrics with the agent | Christopher Baines | 2020-12-07 |
| | | | | | Rather than having the agent run a webserver, use the textfile collector from the node exporter. | ||
* | Avoid setting timeout options for the daemon for the build | Christopher Baines | 2020-12-06 |
| | | | | | The timeouts are useful when fetching substitutes, but I want to keep the previous behaviour of using the values set in the daemon for the build itself. | ||
* | Print out when builds fail due to timeouts | Christopher Baines | 2020-12-06 |
| | |||
* | Add some randomisation to substitute delays | Christopher Baines | 2020-12-05 |
| | |||
* | Add in timeouts around fetching substitutes | Christopher Baines | 2020-12-05 |
| | | | | As I think this sometimes hangs. | ||
* | Fix agent confusion over how many builds are running | Christopher Baines | 2020-12-04 |
| | | | | | The previous code was less than ideal, this simpler and avoids less messy state. | ||
* | Replace WARNING with WARN | Christopher Baines | 2020-11-30 |
| | | | | As it's shorter, and this keeps the logging neat. | ||
* | Add some useful logging when the agent starts | Christopher Baines | 2020-11-30 |
| | |||
* | Improve logging of new builds | Christopher Baines | 2020-11-30 |
| | |||
* | Hide logging from garbage collection | Christopher Baines | 2020-11-30 |
| | |||
* | Improve the logging from the agent -> coordinator communication | Christopher Baines | 2020-11-30 |
| | |||
* | Improve handling of build failures | Christopher Baines | 2020-11-30 |
| | |||
* | Improve agent logging | Christopher Baines | 2020-11-30 |
| | | | | | Use a logger, and set out different levels. Also try and neaten up the formatting. | ||
* | Avoid output from has-substitutes? | Christopher Baines | 2020-11-29 |
| | |||
* | Avoid lots of output when fetching substitutes for inputs | Christopher Baines | 2020-11-29 |
| | |||
* | Wait if no new builds are available | Christopher Baines | 2020-11-29 |
| | |||
* | Fix the post-build-failure procedure to handle agent errors | Christopher Baines | 2020-11-29 |
| | | | | | Spot when the coordinator says the build is already processed, and don't raise an exception. | ||
* | Tune agent sleeping | Christopher Baines | 2020-11-29 |
| | | | | I don't think there's a need for the agent to sleep much. |