From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp10.migadu.com ([2001:41d0:8:6d80::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms5.migadu.com with LMTPS id iIhaDbnKEWO9/QAAbAwnHQ (envelope-from ) for ; Fri, 02 Sep 2022 11:19:53 +0200 Received: from aspmx1.migadu.com ([2001:41d0:8:6d80::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp10.migadu.com with LMTPS id MMSQDLnKEWMFdwAAG6o9tA (envelope-from ) for ; Fri, 02 Sep 2022 11:19:53 +0200 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id CE2D52E6EC for ; Fri, 2 Sep 2022 11:19:52 +0200 (CEST) Received: from localhost ([::1]:45078 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1oU2q7-0000d6-Op for larch@yhetil.org; Fri, 02 Sep 2022 05:19:51 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:50648) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oU2iY-00044C-M7 for bug-guix@gnu.org; Fri, 02 Sep 2022 05:12:03 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:55103) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1oU2iY-0003wP-8R for bug-guix@gnu.org; Fri, 02 Sep 2022 05:12:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1oU2iY-0003Je-0e for bug-guix@gnu.org; Fri, 02 Sep 2022 05:12:02 -0400 X-Loop: help-debbugs@gnu.org Subject: bug#55898: Services depending on new Shepherd features may fail until reboot Resent-From: Ludovic =?UTF-8?Q?Court=C3=A8s?= Original-Sender: "Debbugs-submit" Resent-CC: bug-guix@gnu.org Resent-Date: Fri, 02 Sep 2022 09:12:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 55898 X-GNU-PR-Package: guix X-GNU-PR-Keywords: To: Maxim Cournoyer Cc: Maxime Devos , 55898@debbugs.gnu.org Received: via spool by 55898-submit@debbugs.gnu.org id=B55898.166210986512502 (code B ref 55898); Fri, 02 Sep 2022 09:12:01 +0000 Received: (at 55898) by debbugs.gnu.org; 2 Sep 2022 09:11:05 +0000 Received: from localhost ([127.0.0.1]:44852 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oU2hd-0003Fa-Co for submit@debbugs.gnu.org; Fri, 02 Sep 2022 05:11:05 -0400 Received: from eggs.gnu.org ([209.51.188.92]:43914) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oU2hb-0003Eb-EO for 55898@debbugs.gnu.org; Fri, 02 Sep 2022 05:11:04 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:56130) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oU2hV-0002xy-1n; Fri, 02 Sep 2022 05:10:57 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-Version:In-Reply-To:Date:References:Subject:To: From; bh=AfnVyyPcWfYmy20QhOw75L7th/ok5LpnyLxQ6qhZ+YI=; b=fH4bYQzcy41bhRtG7n+S t+FB2FqldIMyGes3snnWGLcty2mQOKILD9aTI+wHx/mYLaqiWRHKvu5u+APaPPVyuCk+1coN6YU13 atd4zvJDDpfhbrN2kpGdaCzG4slukBvbmaU++6cWVKtt1kVKmGjHIE+k4vITT9QQva9UyeJQ0f+eS h3lvq+B4QC3RqOd+yLY5QDuEY4DFk82ZjNgriIsnYfRH7V+vNqF9Ch/gXorguguLOxlYcDvxmCguz bSr01LGlHJvzsllNmxKPAU7Y34NWeHGtFuwdhlEh++ZcJx+CKAqzffBTJ/HZm8acBnTz17F/9UcMj 360hLMUXnjnLQg==; Received: from [193.50.110.177] (port=47470 helo=ribbon) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oU2hL-0002Ih-6w; Fri, 02 Sep 2022 05:10:54 -0400 From: Ludovic =?UTF-8?Q?Court=C3=A8s?= References: <87a6ajg2zv.fsf@gmail.com> <5521716772922285f7c6bc381c82613026eebbd9.camel@telenet.be> <87bkuvdoe4.fsf@gmail.com> <87r13ex7nw.fsf_-_@gmail.com> <87mtdl2a7u.fsf_-_@gmail.com> <87ilo9294m.fsf@gmail.com> <87a693pjm7.fsf_-_@gnu.org> <87r12fqf6j.fsf@gmail.com> <87y1v75fo0.fsf@gnu.org> <8735debvz7.fsf@gmail.com> <878rn6423p.fsf@gnu.org> <87tu5r8c8m.fsf@gmail.com> <87fshb2of0.fsf@gnu.org> <87ilm69a7i.fsf@gmail.com> X-URL: http://www.fdn.fr/~lcourtes/ X-Revolutionary-Date: Sextidi 16 Fructidor an 230 de la =?UTF-8?Q?R=C3=A9volution, ?= jour du Citron X-PGP-Key-ID: 0x090B11993D9AEBB5 X-PGP-Key: http://www.fdn.fr/~lcourtes/ludovic.asc X-PGP-Fingerprint: 3CE4 6455 8A84 FDC6 9DB4 0CFB 090B 1199 3D9A EBB5 X-OS: x86_64-pc-linux-gnu Date: Fri, 02 Sep 2022 11:10:45 +0200 In-Reply-To: <87ilm69a7i.fsf@gmail.com> (Maxim Cournoyer's message of "Thu, 01 Sep 2022 15:16:33 -0400") Message-ID: <87wnamxht6.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.1 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-guix@gnu.org List-Id: Bug reports for GNU Guix List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-guix-bounces+larch=yhetil.org@gnu.org Sender: "bug-Guix" X-Migadu-Flow: FLOW_IN X-Migadu-To: larch@yhetil.org X-Migadu-Country: US ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1662110392; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding:resent-cc: resent-from:resent-sender:resent-message-id:in-reply-to:in-reply-to: references:references:list-id:list-help:list-unsubscribe: list-subscribe:list-post:dkim-signature; bh=AfnVyyPcWfYmy20QhOw75L7th/ok5LpnyLxQ6qhZ+YI=; b=sz6uLN1EY562T6pKGoH4v9+zrm7oDJ/43vMfa/gwA9Z57j1aD019OMZkOi5vh4ZanRZ+5A Fw7VB3DN5Ha+Sz2O4hUvtaC8fT5aM6i8P87QZMjkVlh1k8bytMgqTC4I/F2EF4vuGreb80 J5NrlOULxFpV9hHlyN6dS10fPsDQRRx8EO6V4sEfglAhouKMTF1FNOdKbwybKTfli2DrUB giOTTh4AEvojoRH4PUnhYNIXnHJUym75gczSdWwteDWFZYlBo8fzOLRJv3VBY2RD7xoDs5 TutBwjVf7fUZaWsmSh8ZcKkwH7/H4rm7knqQ0Bcbu5SQP/5KDIkp+LqKveWOOw== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1662110392; a=rsa-sha256; cv=none; b=jGaHr4ifaDbD3OZk220xvbEEo3AtQpKLCRrvL79hG/AwnbCneTdvxinKxs/RGr5jlGHGFY 0yDrLpWiD2/oW1INqK8eQUnDyCChL3kU3PO/1QOA+dEGusjJK7Mss3N/us+T2uQS2bAu6e PtLB2Jnp/blEhWPJdUQIkj+IVBX5qqmN6DEdVPgclGpKkxaj9boVqD1qmRqCBhjqbxDQFL ENuFMJRpTSpvwPehBxDj2XSONY4Z275iThb47c/swZmwl4BeOUv5xnHA6yS6n5AmWlLgtW zaIpyJttsJwFMHC2ZtiXTexu3ke8/kqwnGBM6gmv29lCm+tUnZTCkBSQrWLLFw== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=gnu.org header.s=fencepost-gnu-org header.b=fH4bYQzc; dmarc=pass (policy=none) header.from=gnu.org; spf=pass (aspmx1.migadu.com: domain of "bug-guix-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="bug-guix-bounces+larch=yhetil.org@gnu.org" X-Migadu-Spam-Score: -2.17 Authentication-Results: aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=gnu.org header.s=fencepost-gnu-org header.b=fH4bYQzc; dmarc=pass (policy=none) header.from=gnu.org; spf=pass (aspmx1.migadu.com: domain of "bug-guix-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="bug-guix-bounces+larch=yhetil.org@gnu.org" X-Migadu-Queue-Id: CE2D52E6EC X-Spam-Score: -2.17 X-Migadu-Scanner: scn1.migadu.com X-TUID: lojO6iytz7hP Hi Maxim, Maxim Cournoyer skribis: >> Currently, new services don=E2=80=99t fail to run: we arrange so that new >> services always =E2=80=9Cwork=E2=80=9D, whether they=E2=80=99re talking = to an old shepherd or a >> new one. The user experience (bugs aside) should be good: services are >> always reloaded. > > This depends on how the services are written, and how much care to this > edge case their author put into writing it. I know the Jami service > type won't run without Shepherd >=3D 0.9.0, and the solution is not > obvious (I'm suspecting sleep* from (guix build dbus-service) should use > regular sleep when shepherd is < 0.9.0.). Ah, that=E2=80=99s an exception then, and this should be avoided IMO. :-) Usually, the Shepherd=E2=80=99s API is backward compatible, so one can norm= ally leave services unchanged. It=E2=80=99s only when you want to take advantag= e of the new features that you have to resort to conditionals. But then more complex services like Jami or childhurd were more likely to hit edge cases with the switch to Fibers. >> IIUC, in the model you propose, we=E2=80=99d sacrifice this, by admittin= g that >> in some cases we just won=E2=80=99t load services live and instead tell = users to >> reboot; the benefit would be cleaner service code. >> >> It=E2=80=99s a tradeoff; the cost/benefit ratio is not obvious to me. > > Having a simple way to cleanly mark a service as "requiring Shepherd > 0.9.X" would provide good value in my opinion, for when adding backward > compatibility is too difficult or not desirable for any reason (such as > causing long 'hangs' while busy-waiting for a process to start in older > shepherds). Right, I agree it=E2=80=99d be useful in those cases. (Though having to busy-wait is not a valid reason IMO: it=E2=80=99s a sign we should provide = the proper abstraction to avoid busy waiting.) I don=E2=80=99t have a clear idea on how to implement it now, but we should= keep that in mind. Thanks, Ludo=E2=80=99.