From owner-freebsd-bugs Sat Feb 22 8:57:43 2003 Delivered-To: freebsd-bugs@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id ABD7C37B401 for ; Sat, 22 Feb 2003 08:57:41 -0800 (PST) Received: from cobra.acceleratedweb.net (cobra-gw.acceleratedweb.net [207.99.79.37]) by mx1.FreeBSD.org (Postfix) with SMTP id 92AF243FBD for ; Sat, 22 Feb 2003 08:57:40 -0800 (PST) (envelope-from simon@optinet.com) Received: (qmail 98601 invoked by uid 106); 22 Feb 2003 16:58:00 -0000 Received: from 24-90-127-16.nyc.rr.com (HELO win2kpc1) (24.90.127.16) by cobra.acceleratedweb.net with SMTP; 22 Feb 2003 16:58:00 -0000 From: "Simon" To: "Martin Blapp" Cc: "freebsd-bugs@FreeBSD.org" , "HiTech Creations Support" Date: Sat, 22 Feb 2003 11:56:54 -0500 X-Mailer: PMMail 2000 Professional (2.20.2661) For Windows 2000 (5.0.2195;3) In-Reply-To: <20030222175014.P59307@levais.imp.ch> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Subject: Re: kern/39878: mysqld process suddenly runs at 99% CPU without load, and a restart of mysqld is required. Message-Id: <20030222165740.92AF243FBD@mx1.FreeBSD.org> Sender: owner-freebsd-bugs@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.org So building with "WITH_LINUXTHREADS=yes" is perfectly safe in 4.7-R and later? PS: i'm not sure what you mean by *now*, thus the question. -Simon On Sat, 22 Feb 2003 17:56:41 +0100 (CET), Martin Blapp wrote: > >Hi, > >> @${ECHO} " WITH_LINUXTHREADS=yes Use the linuxthreads pthread library." >> @${ECHO} " This is _NOT_ recommended for production" >> @${ECHO} " servers. Expect problems when enabled." > >I know that. It was true until now. > >> >> what is the patch below for? > >Mysql did not kill it's threads when using WITH_LINUXTHREADS=yes. So >you were running out of processes and fd's after some time. > >Quoting Rick Reed from Yahoo! > >> The socket on which MySQL listens for new connections on a blocking >> socket most of the time but is set to non-blocking during the >> accept() of the new connection. Due to a bug in the kernel, the new >> socket returned by accept() is a blocking socket but returns the >> O_NONBLOCK flag when queried via fcntl(F_GETFL). That is, the file >> descriptor and the underlying socket don't agree on the blocking >> mode. >> >> Since MySQL determines via fcntl(F_GETFL) that the socket is >> non-blocking, it expects the first read() in my_real_read to not >> block, so it doesn't enable the timeout alarm. However, the read >> does block, and thus there's no timeout alarm. The thread kill >> (which relies on rescheduling the timeout alarm) also does not work >> as a consequence. > >Martin > To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-bugs" in the body of the message