Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 28 Apr 2004 15:59:40 -0500 (CDT)
From:      Mike Silbersack <silby@silby.com>
To:        Daniel Eischen <deischen@FreeBSD.org>
Cc:        cvs-all@FreeBSD.org
Subject:   Re: cvs commit: src/sys/sys proc.h src/sys/kern kern_thread.c      subr_sleepqueue.c
Message-ID:  <20040428155703.N4795@odysseus.silby.com>
In-Reply-To: <200404282036.i3SKarho043330@repoman.freebsd.org>
References:  <200404282036.i3SKarho043330@repoman.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help

On Wed, 28 Apr 2004, Daniel Eischen wrote:

>   Keep track of threads waiting in kse_release() to avoid a race
>   condition where kse_wakeup() doesn't yet see them in (interruptible)
>   sleep queues.  Also add an upcall check to sleepqueue_catch_signals()
>   suggested by jhb.
>
>   This commit should fix recent mysql hangs.
>
>   Reviewed by:    jhb, davidxu
>   Mysql'd by:     Robin P. Blanchard <robin.blanchard at gactr uga edu>

Thanks, I'm glad to hear that it's fixed.

Interestingly enough, in addition to stumbling upon this problem with
mysql, the benchmarking I'm doing for a class project also found a problem
in the mysql client libraries.  For some reasons, when selecting blobs,
libmysql will get into a loop where it does 4 byte reads.  Yes, it will
read entire 100K objects 4 bytes at a time.  I'll post about this to the
relevant mailing lists next week...

Mike "Silby" Silbersack



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20040428155703.N4795>