Hi!

If you are curious, here are the three worst locks in Drizzle (which don't include ones directly in engines)

1) OPEN_lock (we have a solution for this... benchmarks great, need some more refactoring to make work cleanly).

2) Bookmarks in set_var.cc

3) Session list lock. A SHOW PROCESSLIST will block a new connection, but not a running query.


Cheers,
        -Brian

On Jul 29, 2009, at 12:47 PM, MARK CALLAGHAN wrote:

On Wed, Jul 29, 2009 at 10:00 AM, Jay Pipes<[email protected]> wrote:
MARK CALLAGHAN wrote:

On Wed, Jul 29, 2009 at 3:11 AM, Biping MENG<[email protected]> wrote:

  Currently the size of pool of threads is fixed to 8 by default
(sysbenches on more than 8 cores platforms should produce nearly the same results as 8 cores platform does; from 9th on, cores idle for most of the time). But I think it really should be easy to set when starting drizzled (like providing a option, say, --pool-size=XXX ), for the size has a
quite
tight relationship with the number of CPU cores available which varies on
different machines. Thoughts?

Earlier threads about your work mentioned rescheduling threads on any
event that requires a long wait (IO, row lock, ...). Is that part of
your patch? For example, how does Drizzle with this patch behave when
the pool size is 8 and 8 sessions block in InnoDB on the auto
increment lock for a table?

I haven't taken a look at Bipeng's code yet (but I'm excited to :) ). But, I should point out that Drizzle does not modify any storage engine; we instead wait for the storage engine developers to improve their plugins and we
incorporate their changes almost immediately.

Not sure if you were asking if Bipeng has modified the InnoDB source code or not. Just wanted to make sure it was clear where the "dividing lines" are
in Drizzle development :)

I want to know how you plan to resolve some of the problems lists at
the URL below if you intend to run with a few threads per core, or
even with a fixed number of threads.
http://mysqlha.blogspot.com/2009/01/no-new-global-mutexes-and-how-to-make.html

And today's example of a connection pileup in MySQL is
http://bugs.mysql.com/bug.php?id=46459


--
Mark Callaghan
[email protected]

_______________________________________________
Mailing list: https://launchpad.net/~drizzle-discuss
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~drizzle-discuss
More help   : https://help.launchpad.net/ListHelp


_______________________________________________
Mailing list: https://launchpad.net/~drizzle-discuss
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~drizzle-discuss
More help   : https://help.launchpad.net/ListHelp

Reply via email to