From owner-freebsd-hackers Mon Feb 24 8:42:57 2003 Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 46A8E37B401 for ; Mon, 24 Feb 2003 08:42:55 -0800 (PST) Received: from fump.kawo2.rwth-aachen.de (fump.kawo2.RWTH-Aachen.DE [134.130.181.148]) by mx1.FreeBSD.org (Postfix) with ESMTP id 44B7C43FDD for ; Mon, 24 Feb 2003 08:42:53 -0800 (PST) (envelope-from alex@fump.kawo2.rwth-aachen.de) Received: from fump.kawo2.rwth-aachen.de (localhost.kawo2.rwth-aachen.de [127.0.0.1]) by fump.kawo2.rwth-aachen.de (8.12.7/8.12.6) with ESMTP id h1OGgqVX036052 for ; Mon, 24 Feb 2003 17:42:52 +0100 (CET) (envelope-from alex@fump.kawo2.rwth-aachen.de) Received: (from alex@localhost) by fump.kawo2.rwth-aachen.de (8.12.7/8.12.6/Submit) id h1OGgq9m036051 for hackers@FreeBSD.org; Mon, 24 Feb 2003 17:42:52 +0100 (CET) Date: Mon, 24 Feb 2003 17:42:52 +0100 From: Alexander Langer To: hackers@FreeBSD.org Subject: mysql endless loops Message-ID: <20030224164252.GD33820@fump.kawo2.rwth-aachen.de> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline X-PGP-Fingerprint: 7EC1 5B98 4554 2A63 9079 2B2F 9A94 CD6F 7F14 EFA4 X-PGP-at: finger alex@big.endian.de X-Verwirrung: Dieser Header dient der allgemeinen Verwirrung. User-Agent: Mutt/1.5.3i Sender: owner-freebsd-hackers@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG Hi! A known bug with MySQL 3.x is that it sometimes enters a 100% cpu usage loop if you stress it too much (I can repeat this every 2-3 weeks). I just attached a ktrace, and it shows this: 57486 mysqld CALL poll(0x8382000,0x4,0xb8c) 57486 mysqld RET poll 1 57486 mysqld CALL gettimeofday(0x283fddec,0) 57486 mysqld RET gettimeofday 0 57486 mysqld CALL poll(0x8382000,0x4,0xb8c) 57486 mysqld RET poll 1 57486 mysqld CALL gettimeofday(0x283fddec,0) 57486 mysqld RET gettimeofday 0 57486 mysqld CALL poll(0x8382000,0x4,0xb8c) 57486 mysqld RET poll 1 57486 mysqld CALL gettimeofday(0x283fddec,0) 57486 mysqld RET gettimeofday 0 57486 mysqld CALL poll(0x8382000,0x4,0xb8c) 57486 mysqld RET poll 1 57486 mysqld CALL gettimeofday(0x283fddec,0) 57486 mysqld RET gettimeofday 0 57486 mysqld CALL poll(0x8382000,0x4,0xb8c) 57486 mysqld RET poll 1 57486 mysqld CALL gettimeofday(0x283fddec,0) 57486 mysqld RET gettimeofday 0 57486 mysqld CALL poll(0x8382000,0x4,0xb8c) 57486 mysqld RET poll 1 57486 mysqld CALL gettimeofday(0x283fddec,0) 57486 mysqld RET gettimeofday 0 57486 mysqld CALL poll(0x8382000,0x4,0xb8c) 57486 mysqld RET poll 1 57486 mysqld CALL gettimeofday(0x283fddec,0) 57486 mysqld RET gettimeofday 0 57486 mysqld CALL poll(0x8382000,0x4,0xb8c) 57486 mysqld RET poll 1 57486 mysqld CALL gettimeofday(0x283fddec,0) 57486 mysqld RET gettimeofday 0 57486 mysqld CALL poll(0x8382000,0x4,0xb8c) 57486 mysqld RET poll 1 57486 mysqld CALL gettimeofday(0x283fddec,0) 57486 mysqld RET gettimeofday 0 57486 mysqld CALL poll(0x8382000,0x4,0xb8c) 57486 mysqld RET poll 1 ... (approx. 80 MB of these lines, then I killed the process). It seem the thread handling is broken for mysql (this gettimeofday happens in the "while (select_thread_in_use)" in mysqld.cc I believe. Anyways, I'm going to try mysql 4.0 now, maybe someone can use the information above. Alex To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message