From owner-freebsd-rc@FreeBSD.ORG Tue Sep 17 04:33:25 2013 Return-Path: Delivered-To: rc@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 9628C978 for ; Tue, 17 Sep 2013 04:33:25 +0000 (UTC) (envelope-from hrs@FreeBSD.org) Received: from mail.allbsd.org (gatekeeper.allbsd.org [IPv6:2001:2f0:104:e001::32]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id E50DA2920 for ; Tue, 17 Sep 2013 04:33:24 +0000 (UTC) Received: from alph.d.allbsd.org (p4034-ipbf2106funabasi.chiba.ocn.ne.jp [114.148.167.34]) (authenticated bits=128) by mail.allbsd.org (8.14.5/8.14.5) with ESMTP id r8H4X7I9081106 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Tue, 17 Sep 2013 13:33:17 +0900 (JST) (envelope-from hrs@FreeBSD.org) Received: from localhost (localhost [127.0.0.1]) (authenticated bits=0) by alph.d.allbsd.org (8.14.7/8.14.5) with ESMTP id r8H4X6pf045552; Tue, 17 Sep 2013 13:33:07 +0900 (JST) (envelope-from hrs@FreeBSD.org) Date: Tue, 17 Sep 2013 13:32:39 +0900 (JST) Message-Id: <20130917.133239.1751419599170896640.hrs@allbsd.org> To: jmg@funkthat.com Subject: Re: sendmail queue runner starting multiple times... From: Hiroki Sato In-Reply-To: <20130916214901.GE68682@funkthat.com> References: <20130916214901.GE68682@funkthat.com> X-PGPkey-fingerprint: BDB3 443F A5DD B3D0 A530 FFD7 4F2C D3D8 2793 CF2D X-Mailer: Mew version 6.5 on Emacs 24.3 / Mule 6.0 (HANACHIRUSATO) Mime-Version: 1.0 Content-Type: Multipart/Signed; protocol="application/pgp-signature"; micalg=pgp-sha1; boundary="--Security_Multipart0(Tue_Sep_17_13_32_39_2013_481)--" Content-Transfer-Encoding: 7bit X-Virus-Scanned: clamav-milter 0.97.4 at gatekeeper.allbsd.org X-Virus-Status: Clean X-Greylist: Sender succeeded SMTP AUTH, not delayed by milter-greylist-4.2.7 (mail.allbsd.org [133.31.130.32]); Tue, 17 Sep 2013 13:33:17 +0900 (JST) X-Spam-Status: No, score=-92.3 required=13.0 tests=CONTENT_TYPE_PRESENT, ONLY1HOPDIRECT,RCVD_IN_PBL,RCVD_IN_RP_RNBL,SAMEHELOBY2HOP,SPF_SOFTFAIL, USER_IN_WHITELIST autolearn=no version=3.3.2 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on gatekeeper.allbsd.org Cc: rc@FreeBSD.org X-BeenThere: freebsd-rc@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Discussion related to /etc/rc.d design and implementation." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 17 Sep 2013 04:33:25 -0000 ----Security_Multipart0(Tue_Sep_17_13_32_39_2013_481)-- Content-Type: Multipart/Mixed; boundary="--Next_Part(Tue_Sep_17_13_32_39_2013_565)--" Content-Transfer-Encoding: 7bit ----Next_Part(Tue_Sep_17_13_32_39_2013_565)-- Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit John-Mark Gurney wrote in <20130916214901.GE68682@funkthat.com>: jm> I noticed that if you start sendmail, it doesn't detect that the jm> mail queue runner is already running and starts it up multiple times... jm> jm> My proposed patch is: jm> --- /usr/src/etc/rc.d/sendmail 2013-01-12 21:34:02.000000000 -0800 jm> +++ /tmp/sendmail.rc 2013-09-16 14:45:21.000000000 -0700 jm> @@ -93,7 +93,7 @@ jm> jm> name="sendmail_clientmqueue" jm> rcvar="sendmail_msp_queue_enable" jm> -start_cmd="${command} ${sendmail_msp_queue_flags}" jm> pidfile="${sendmail_mspq_pidfile:-/var/spool/clientmqueue/sm-client.pid}" jm> +start_cmd="[ -z \"`check_pidfile "${pidfile}" "${command}"`\" ] && ${command} ${sendmail_msp_queue_flags} && _run_rc_postcmd" jm> required_files="/etc/mail/submit.cf" jm> run_rc_command "$1" jm> jm> jm> This is because setting start_cmd disables the pid checks, so we need jm> to add them back... This patch won't print out the already running jm> bit, but we also don't print out the fact that we are starting it, it jm> doesn't seem like that big of a loss.. jm> jm> Is there a better way? If someone else doesn't produce a better patch, jm> I'll get re's permission to commit in few days... jm> jm> Thanks. jm> jm> P.S. Please CC me, I'm not on the list. Does the attached patch fix this issue? -- Hiroki ----Next_Part(Tue_Sep_17_13_32_39_2013_565)-- Content-Type: Text/X-Patch; charset=us-ascii Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="rc_d_sendmail.20130916-1.diff" Index: etc/rc.d/sendmail =================================================================== --- etc/rc.d/sendmail (revision 255437) +++ etc/rc.d/sendmail (working copy) @@ -80,7 +80,6 @@ if checkyesno sendmail_submit_enable; then name="sendmail_submit" rcvar="sendmail_submit_enable" - start_cmd="${command} ${sendmail_submit_flags}" run_rc_command "$1" fi @@ -87,13 +86,11 @@ if checkyesno sendmail_outbound_enable; then name="sendmail_outbound" rcvar="sendmail_outbound_enable" - start_cmd="${command} ${sendmail_outbound_flags}" run_rc_command "$1" fi -name="sendmail_clientmqueue" +name="sendmail_msp_queue" rcvar="sendmail_msp_queue_enable" -start_cmd="${command} ${sendmail_msp_queue_flags}" -pidfile="${sendmail_mspq_pidfile:-/var/spool/clientmqueue/sm-client.pid}" +pidfile="${sendmail_msp_queue_pidfile:-/var/spool/clientmqueue/sm-client.pid}" required_files="/etc/mail/submit.cf" run_rc_command "$1" ----Next_Part(Tue_Sep_17_13_32_39_2013_565)---- ----Security_Multipart0(Tue_Sep_17_13_32_39_2013_481)-- Content-Type: application/pgp-signature Content-Transfer-Encoding: 7bit -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.13 (FreeBSD) iEYEABECAAYFAlI322cACgkQTyzT2CeTzy17QgCfZZUl1KjA4S94sM4X3kRVuYzL fo4An1RZBLxOs8gyIsfYeDs2U4fpcFtV =pSi4 -----END PGP SIGNATURE----- ----Security_Multipart0(Tue_Sep_17_13_32_39_2013_481)----