From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.io/gmane.comp.sysutils.supervision.general/2252 Path: news.gmane.org!.POSTED!not-for-mail From: Jonathan de Boyne Pollard Newsgroups: gmane.linux.debian.devel.general,gmane.comp.sysutils.supervision.general Subject: Is missing SysV-init support a bug? Date: Sat, 3 Sep 2016 21:01:56 +0100 Message-ID: <75b672e9-f72a-560c-afbd-7f18ef2a85f7@NTLWorld.com> References: <20160901132130.747.qmail@6c3a1209216aab.315fe32.mid.smarden.org> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit X-Trace: blaine.gmane.org 1472933895 12434 195.159.176.226 (3 Sep 2016 20:18:15 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Sat, 3 Sep 2016 20:18:15 +0000 (UTC) User-Agent: Mozilla/5.0 (Windows NT 6.0; rv:45.0) Gecko/20100101 Thunderbird/45.1.1 Cc: debian-devel@lists.debian.org To: "supervision@list.skarnet.org" Original-X-From: bounce-debian-devel=glddg-debian-devel-5=m.gmane.org@lists.debian.org Sat Sep 03 22:18:11 2016 Return-path: Envelope-to: glddg-debian-devel-5@m.gmane.org Original-Received: from bendel.debian.org ([82.195.75.100]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bgHOE-0002om-L1 for glddg-debian-devel-5@m.gmane.org; Sat, 03 Sep 2016 22:18:10 +0200 Original-Received: from localhost (localhost [127.0.0.1]) by bendel.debian.org (Postfix) with QMQP id 99B71316; Sat, 3 Sep 2016 20:18:09 +0000 (UTC) X-Mailbox-Line: From debian-devel-request@lists.debian.org Sat Sep 3 20:18:09 2016 Old-Return-Path: Original-Received: from localhost (localhost [127.0.0.1]) by bendel.debian.org (Postfix) with ESMTP id B237E304 for ; Sat, 3 Sep 2016 20:02:23 +0000 (UTC) X-Virus-Scanned: at lists.debian.org with policy bank en-ht X-Amavis-Spam-Status: No, score=-2.701 tagged_above=-10000 required=5.3 tests=[BAYES_00=-2, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=-0.001] autolearn=no autolearn_force=no Original-Received: from bendel.debian.org ([127.0.0.1]) by localhost (lists.debian.org [127.0.0.1]) (amavisd-new, port 2525) with ESMTP id myAVRs6SjDSW for ; Sat, 3 Sep 2016 20:02:18 +0000 (UTC) X-policyd-weight: using cached result; rate: -5 Original-Received: from know-smtprelay-omc-2.server.virginmedia.net (know-smtprelay-omc-2.server.virginmedia.net [80.0.253.66]) by bendel.debian.org (Postfix) with ESMTP id 5B9252FF for ; Sat, 3 Sep 2016 20:02:06 +0000 (UTC) Original-Received: from [192.168.1.100] ([86.10.211.13]) by know-smtprelay-2-imp with bizsmtp id f8231t00a0HtmFq01823EW; Sat, 03 Sep 2016 21:02:04 +0100 X-Originating-IP: [86.10.211.13] X-Spam: 0 X-Authority: v=2.1 cv=XKnNMlVE c=1 sm=1 tr=0 a=SB7hr1IvJSWWr45F2gQiKw==:117 a=SB7hr1IvJSWWr45F2gQiKw==:17 a=L9H7d07YOLsA:10 a=9cW_t1CCXrUA:10 a=s5jvgZ67dGcA:10 a=IkcTkHD0fZMA:10 a=Vt2AcnKqAAAA:8 a=uj8X_y5MAAAA:8 a=_Kr0LQ-IoK2BQJeBzBAA:9 a=QEXdDO2ut3YA:10 a=v10HlyRyNeVhbzM4Lqgd:22 a=gp7W3T1CZUxA4ewt6LkN:22 In-Reply-To: <20160901132130.747.qmail@6c3a1209216aab.315fe32.mid.smarden.org> X-Rc-Spam: 2008-11-04_01 X-Rc-Virus: 2007-09-13_01 X-Rc-Spam: 2008-11-04_01 Resent-Message-ID: Resent-From: debian-devel@lists.debian.org X-Mailing-List: archive/latest/320695 X-Loop: debian-devel@lists.debian.org List-Id: List-URL: List-Post: List-Help: List-Subscribe: List-Unsubscribe: Precedence: list Resent-Sender: debian-devel-request@lists.debian.org List-Archive: https://lists.debian.org/msgid-search/75b672e9-f72a-560c-afbd-7f18ef2a85f7@NTLWorld.com Resent-Date: Sat, 3 Sep 2016 20:18:09 +0000 (UTC) Xref: news.gmane.org gmane.linux.debian.devel.general:210846 gmane.comp.sysutils.supervision.general:2252 Archived-At: Gerrit Pape: > To me too this readiness IPC ideas and implementations look > over-engineered. > > A good convention for service programs would be to functionally test > for services it needs very early on startup, and fail if dependencies > are not available. The service supervisor (any modern init scheme > seems to now support this) relaunches eventually, until all > dependencies are fulfilled. > The problem with the thundering herd approach is twofold. Firstly, it really does matter in practice when the machine has tens if not hundreds of client processes all continually restarting whilst they wait for (say) the RabbitMQ server to come up. Secondly, these explanations never seem to take system shutdown into account. In the ordered services world, shutdown order is the reverse of startup order, and things generally work. In the thundering herd world, often the theory is just to send terminate and kill signals willy-nilly to every service on the system. This almost never works cleanly in any but the most trivial systems. (People will no doubt be thinking the classic example of NFS mounts, here. But there are all sorts of possibilities, from /var/ being unmounted before logging services are turned off to the proxy DNS server being turned off whilst other services are still doing DNS lookups.) We discussed this on the Supervision mailing list last year: http://www.mail-archive.com/supervision%40list.skarnet.org/msg00673.html