[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: February update on the Guile guix-daemon
From: |
Ludovic Courtès |
Subject: |
Re: February update on the Guile guix-daemon |
Date: |
Sat, 24 Feb 2024 17:48:02 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) |
Hello!
Thanks for the update!
Christopher Baines <mail@cbaines.net> skribis:
> - Then there's the big areas to work on next:
>
> - I think I'm going to need to use thread pools for SQLite operations
> in the daemon, as the build coordinator does.
I think we should refrain from using POSIX threads directly and instead
use Fibers to its full extent. In this case, I’d use a resource pool as
done in Cuirass (and in the Coordinator too, no? maybe that’s what you
meant?).
> - There's the low level work of setting up the build environment, the
> work on the guile-daemon branch helps a lot with this, but as
> pointed out by Ludo, there might be some issues with fork and
> similar operations in a Guile program using threads.
Right. I think one of the things we discussed in Brussels is that,
since SQLite operations might block for a while, the daemon will have to
be multithreaded. Which means no fork/clone, which in turn probably
means delegating forking/cloning to a separate helper process. (That’s
also what bubblewrap does, IIUC.)
> - While I've implemented some of the server side protocol used by the
> daemon, I'd like to extract that code in to a module so that it's
> not wrapped up inside the daemon script
Wo0t!
Cheers,
Ludo’.