OSEC

Neohapsis is currently accepting applications for employment. For more information, please visit our website www.neohapsis.com or email hr@neohapsis.com
Re: Table Locking (Was: Best CPU config for a busy DB server)

From: JW (jwmailsw.com)
Date: Fri May 09 2008 - 17:05:44 CDT


On Friday 09 May 2008 04:32:10 pm Saravanan wrote:
> --- On Sat, 5/10/08, JW <jwmailsw.com> wrote:
> > From: JW <jwmailsw.com>
> > Is it correct that mysql 5.0 is threaded in such a way that
> > a DB server taking lots of queries from many clients will be able\
> > to utilize lots of CPUs/core on a multi-cpu, multi-core system?
> >
> > Or are multi CPUs/cores a waste?
> >
> > Thanks,
> >
> > JW

> Yes it can use multiple cores. Mysqld is a multithreaded service.
>
> Saravanan

I just found this interesting tidbit:

*******
"MySQL On Multi-Core Machines - The DevShed technical tour explains that MySQL
can spawn new threads, each of which can execute on a different
processor/core.

What it doesn’t say is that a single thread can only execute on a single core,
and if that thread locks a table, then no other threads that need that table
can execute until the locking thread/query is complete. Short answer: MySQL
works well on multi-core machines until you lock a table."
********

One of our programmers was wondering if this is referring to such implicit
lock such as when you you read from a table (SELECT) or only explicit table
locking, which we don't (currently) use in any of our code.

Does anyone know?

        JW

--

----------------------
System Administrator - Cedar Creek Software
http://www.cedarcreeksoftware.com

--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql