aboutsummaryrefslogtreecommitdiff
path: root/guix-build-coordinator/utils
Commit message (Collapse)AuthorAge
* Add make-discrete-priority-queueing-channelsChristopher Baines2024-10-14
|
* Track the procedures the worker threads are runningChristopher Baines2024-07-02
|
* Reduce the sleep in the worker threadsChristopher Baines2024-07-02
|
* Avoid using select and use poll insteadChristopher Baines2024-06-07
| | | | | I don't trust select, as I think I'm seeing it make blocking read calls. I don't know if that's coming from here, but better to just avoid it.
* Order messages to the writer thread channelChristopher Baines2024-05-15
| | | | So that they're processed in a first come first served manor.
* Export port timeout error predicatesChristopher Baines2024-05-15
|
* Fix the no-fibers-wait in with-fibers-port-timeoutsChristopher Baines2024-05-14
|
* Make the worker thread timeout a parameterChristopher Baines2024-05-12
|
* Fix the port timeout exceptionsChristopher Baines2024-05-10
|
* Have the port monitoring fiber use non blocking socketsChristopher Baines2024-04-28
|
* Guard against signaling the error condition not workingChristopher Baines2024-04-17
| | | | As this seems to happen when the process runs out of file descriptors.q
* Fix the sleep-impl argument to retry-on-errorChristopher Baines2024-03-16
|
* Add a definition of retry-on-error which uses the fibers sleepChristopher Baines2024-03-15
|
* Add inbuilt port monitoringChristopher Baines2024-01-19
| | | | | | There seems to be some issue which can lead to the client and agent ports no longer being listened on. I've got no idea how to track this down, so just try and monitor for it and kill the process if it happens.
* Fix worker thread channel destructor loggingChristopher Baines2024-01-17
|
* Add a with-fibers-timeout utilityChristopher Baines2023-11-10
|
* Use start-stack in make-worker-thread-channelChristopher Baines2023-10-06
| | | | | | | | | | Not sure what this does, but it seems to work around Guile crashing in (backtrace) like: Backtrace: In guix-build-coordinator/utils/fibers.scm: Exception thrown while printing backtrace: In procedure vector-ref: Argument 2 out of range: 99
* Try and ensure that the worker threads don't disappearChristopher Baines2023-08-22
| | | | Add some top level exception handling to guard against errors anywhere.
* Guard against errors in the initializer and destructorChristopher Baines2023-05-02
| | | | In the worker threads.
* Support naming the worker thread channel threadsChristopher Baines2023-05-02
|
* Add a timeout for using the worker threadsChristopher Baines2023-05-02
| | | | | Otherwise operations can build up while the thread pool is busy, and this'll hopefully make it clearer when there are issues with the thread pools.
* Support a duration logger in the worker thread channelChristopher Baines2023-04-25
|
* Support expiring worker threads on exceptionChristopher Baines2023-04-24
|
* 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.
* Add letpar&Christopher Baines2022-01-19
| | | | Mostly copied from the Guix Data Service.
* Log delays when worker thread calls occur inside worker threadsChristopher Baines2021-12-20
|
* Allow disabling the logging of exceptions in worker threadsChristopher Baines2021-11-26
| | | | | As some exceptions can be expected, like chunked responses being incomplete, so allow reducing the unnecessary output.
* Track worker thread task durationsChristopher Baines2021-11-16
| | | | So this can be logged.
* Make some SQLite related improvementsChristopher Baines2021-04-20
| | | | | Don't keep database connections around forever as this relates to cached query plans, and also run the optimize pragma when closing connections.
* Support destructors and lifetimes for worker threadsChristopher Baines2021-04-20
|
* Don't use with-exception-handler with (backtrace)Christopher Baines2021-01-22
| | | | | | | | | | | With with-exception-handler being called with #:unwind? #f (implicitly). This breaks Guile internals used by (backtrace) [1], meaning you get a different exception/backtrace when Guile itself breaks. This should avoid the "string->number: Wrong type argument in position 1 (expecting string): #f" exception I've been haunted by for the last year. 1: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=46009
* Support tracking delays in worker thread channelsChristopher Baines2020-11-30
|
* Split the fibers utils from the main utils moduleChristopher Baines2020-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).