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