From mboxrd@z Thu Jan 1 00:00:00 1970 From: ludo@gnu.org (Ludovic =?UTF-8?Q?Court=C3=A8s?=) Subject: bug#30644: Cuirass runs out of build users Date: Sun, 11 Mar 2018 22:43:48 +0100 Message-ID: <87zi3ethij.fsf@gnu.org> References: <20180228090714.GA1845@jurong> <20180302140833.GB3213@macbook41> <20180305090256.GA9171@jurong> <20180305155351.GA6054@jurong> <87efkvpl8f.fsf@gnu.org> <20180308000111.77cce7d6@scratchpost.org> <20180308012541.517dc4dc@scratchpost.org> <20180308012923.525342f6@scratchpost.org> <87efkuojya.fsf@gnu.org> <20180311070610.788df5b9@scratchpost.org> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:42435) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ev8lC-0007uJ-Q3 for bug-guix@gnu.org; Sun, 11 Mar 2018 17:44:07 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ev8l8-0004zn-O5 for bug-guix@gnu.org; Sun, 11 Mar 2018 17:44:06 -0400 Received: from debbugs.gnu.org ([208.118.235.43]:47869) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ev8l8-0004zc-Jy for bug-guix@gnu.org; Sun, 11 Mar 2018 17:44:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1ev8l8-0007mz-6X for bug-guix@gnu.org; Sun, 11 Mar 2018 17:44:02 -0400 Sender: "Debbugs-submit" Resent-Message-ID: In-Reply-To: <20180311070610.788df5b9@scratchpost.org> (Danny Milosavljevic's message of "Sun, 11 Mar 2018 07:06:10 +0100") List-Id: Bug reports for GNU Guix List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-guix-bounces+gcggb-bug-guix=m.gmane.org@gnu.org Sender: "bug-Guix" To: Danny Milosavljevic Cc: 30644@debbugs.gnu.org Hi, Danny Milosavljevic skribis: > On Thu, 08 Mar 2018 13:01:01 +0100 > ludo@gnu.org (Ludovic Court=C3=A8s) wrote: > >> So what=E2=80=99s your take on this? > > sqlite has a sqlite-unlock-notify. We should wrap it and use it when we = get the > "locked" error code. > > We should also enable extended error codes https://sqlite.org/c3ref/exten= ded_result_codes.html . > > See also https://sqlite.org/unlock_notify.html for a blocking version of = _step (to the right). Interesting. > Do we want cuirass to block until the lock is available? The POSIX thread itself should not block. Rather the fiber should yield to other fibers. So we could do the blocking-step within =E2=80=98non-blocking=E2=80=99 bloc= k as defined in (cuirass utils), though =E2=80=98non-blocking=E2=80=99 as currently impl= emented is a bit expensive. Or we could simply poll: catch those exceptions and try again later. If this is rare enough, as seems to be the case, that might be an acceptable approach. Thoughts? Ludo=E2=80=99.