From owner-freebsd-bugs@FreeBSD.ORG Fri Dec 23 19:40:10 2005 Return-Path: X-Original-To: freebsd-bugs@hub.freebsd.org Delivered-To: freebsd-bugs@hub.freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 6D71216A41F for ; Fri, 23 Dec 2005 19:40:10 +0000 (GMT) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [216.136.204.21]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7D6CB43D45 for ; Fri, 23 Dec 2005 19:40:04 +0000 (GMT) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.13.4/8.13.4) with ESMTP id jBNJe4Te086543 for ; Fri, 23 Dec 2005 19:40:04 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.13.4/8.13.4/Submit) id jBNJe4ZB086542; Fri, 23 Dec 2005 19:40:04 GMT (envelope-from gnats) Resent-Date: Fri, 23 Dec 2005 19:40:04 GMT Resent-Message-Id: <200512231940.jBNJe4ZB086542@freefall.freebsd.org> Resent-From: FreeBSD-gnats-submit@FreeBSD.org (GNATS Filer) Resent-To: freebsd-bugs@FreeBSD.org Resent-Reply-To: FreeBSD-gnats-submit@FreeBSD.org, Garrett Wollman Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 465F916A41F for ; Fri, 23 Dec 2005 19:30:37 +0000 (GMT) (envelope-from wollman@xyz.csail.mit.edu) Received: from khavrinen.csail.mit.edu (khavrinen.csail.mit.edu [128.30.28.20]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3917343D7C for ; Fri, 23 Dec 2005 19:30:16 +0000 (GMT) (envelope-from wollman@xyz.csail.mit.edu) Received: from xyz.csail.mit.edu (xyz.csail.mit.edu [128.31.0.28]) by khavrinen.csail.mit.edu (8.13.1/8.13.4) with ESMTP id jBNJUDbD086323 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO CN= issuer=) for ; Fri, 23 Dec 2005 14:30:15 -0500 (EST) (envelope-from wollman@xyz.csail.mit.edu) Received: (from wollman@localhost) by xyz.csail.mit.edu (8.13.4/8.13.4/Submit) id jBNJUCjn000912; Fri, 23 Dec 2005 14:30:12 -0500 (EST) (envelope-from wollman) Message-Id: <200512231930.jBNJUCjn000912@xyz.csail.mit.edu> Date: Fri, 23 Dec 2005 14:30:12 -0500 (EST) From: Garrett Wollman To: FreeBSD-gnats-submit@FreeBSD.org X-Send-Pr-Version: 3.113 Cc: Subject: bin/90863: 6.0 boot: name resolution broken for daemon startup X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Garrett Wollman List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 23 Dec 2005 19:40:10 -0000 >Number: 90863 >Category: bin >Synopsis: 6.0 boot: name resolution broken for daemon startup >Confidential: no >Severity: serious >Priority: medium >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Fri Dec 23 19:40:03 GMT 2005 >Closed-Date: >Last-Modified: >Originator: Garrett Wollman >Release: FreeBSD 6.0-RELEASE-p1 i386 >Organization: >Environment: System: FreeBSD xyz.csail.mit.edu 6.0-RELEASE-p1 FreeBSD 6.0-RELEASE-p1 #1: Fri Dec 23 13:27:54 EST 2005 wollman@xyz.csail.mit.edu:/usr/obj/usr/src/sys/XYZ i386 This is a fairly generic 6.0 install from source. >Description: This machine uses a local caching nameserver. When booting, named starts successfully but does not answer queries for about half a minute. Meanwhile, many other daemons (such as ntpd, sendmail, and apache) are started by the rc scripts and fail because they depend on name resolution working immediately on startup. This is very difficult to debug as named is working by the time a console login is possible. There is a second name server referenced in /etc/resolv.conf, but libc will not fall back to it because named is running and seems to be giving some sort of answer (SERVFAIL?). >How-To-Repeat: >Fix: I am using the following workaround: --- /usr/src/etc/rc.d/named Mon May 23 08:25:33 2005 +++ /etc/rc.d/named Fri Dec 23 14:16:26 2005 @@ -115,3 +115,8 @@ pidfile="${named_pidfile:-/var/run/${name}/pid}" run_rc_command "$1" +case "$1" in +*start*) while ! host localhost 2>/dev/null >/dev/null; do + sleep 1 + done;; +esac >Release-Note: >Audit-Trail: >Unformatted: