In the last episode (Aug 19), Reid Sutherland (mysql) said:
> Dan Nelson wrote:
> > You cannot send signals to individual threads.  Signals are
> > delivered to the process as a whole rather than to a thread.  The
> > only way to kill a thread is from within the application itself. 
> > Mysql provides the "kill <id>" command for this.
> 
> Thanks for your reply.
> 
> What could I do about hung mySQL threads?  'kill' fails to do
> anything, except marked the thread as killed but keeps it active.
> 
> Also, when I kill the mySQL parent, I have to then SIGKILL all the
> hung threads thereafter.  Is this normal?

Nope.  Maybe you need to apply some OS patches.  I assume since you're
talking about threads as though they were processes, you're on Linux. 
Make sure you're running the latest glibc, and if it still happens,
file a bugreport via your Linux distro's bug reporting tool.  When you
SIGKILL the main LinuxThreads process/thread, all associated
processes/threads should be killed also.

> I've even seen an issue where no mySQL processes exist yet I cannot
> restart mySQL since an unknown process is holding port 3306.  I then
> kill apache and some mySQL threads appear out of no where and require
> a SIGKILL.  This doesn't have anything to do with this subject, but
> I'd like to share my findings.

You can use the command "lsof -i :3306" to display all processes with a
socket open on port 3306.

-- 
        Dan Nelson
        [EMAIL PROTECTED]

---------------------------------------------------------------------
Before posting, please check:
   http://www.mysql.com/manual.php   (the manual)
   http://lists.mysql.com/           (the list archive)

To request this thread, e-mail <[EMAIL PROTECTED]>
To unsubscribe, e-mail <[EMAIL PROTECTED]>
Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php

Reply via email to