I will have a look at MySQL thread layer AND of course wait for kernel 2.6..
Chris Nolan wrote:
On Thu, 2004-01-08 at 21:10, [EMAIL PROTECTED] wrote:
Andy Bakun wrote:
On Wed, 2004-01-07 at 10:38, [EMAIL PROTECTED] wrote:I would like that MySQL avoid calling pthread_create function, which is the wrapper around clone() provided by pthreads. I'm looking for a way to exploit clone() directly, or to deploy processes instead of threads through the fork call.
Hi all,
does anyone know if it's possible to compile MySQL under Linux so that
mysqld doesn't rely upon LinuxThreads, but makes direct call to fork()
or clone() system calls instead?
As far as I know and can tell from reading docs, Linux's pthread implementation DOES use clone to create threads. In most cases, pthread is a wrapper around whatever threading services the host system provides.
Just for testing purposes: I am trying to investigate the possible benefits that would come from the use of MySQL with the Migshm patch for OpenMosix, which enables threads migration, but which doesn't support pthreads presently (pthread_create call).
I'm looking for a way to avoid the exploitation of pthreads underWhy wouldn't you want to use an industry standard threading model?
Linux.
Any suggestions? Thanks!
You've got a few options if I recall correctly:
1. MySQL's lower layers have a POSIX layer that takes care of things like thread usage. You might want to look there. 2. Forget it. MySQL's architecture is designed to leverage threads and the shared address space they require. The only thing LinuxThreads does in addition to calling clone() when creating new "threads" involves some minor management by the helper thread. 3. Wait for a while. Linux 2.6 includes (as does the RedHat 9.0 and ES/WS/AS 3.0 kernels) NPTL - the Native POSIX Threads for Linux implementation which is superior in many ways and does not use clone() at all. As you'll no longer want to use clone() for threaded apps (trust me on this), I'm betting that all interested parties will start complaining in the relevant mailing lists. 4. (Dare I say it) Pick another RDBMS that uses a process-per-connection model like that evil Oracle contraption or that funky-lookin' elephant-promoting feature-heavy bohemeth PostgreSQL. 5. Use FoxPro, realise how lucky you are and manufacture some contentment in running MySQL on a single machine. :-)
Hope this helps / amuses!
Regards,
Chris
-- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe: http://lists.mysql.com/[EMAIL PROTECTED]