List:General Discussion« Previous MessageNext Message »
From:Michael Widenius Date:September 2 1999 4:56pm
Subject:Re: Dangling threads take all CPU
View as plain text  
>>>>> "Thomas" == Thomas van Gulick
> <list@stripped> writes:

>> >>>>> "Thomas" == Thomas van Gulick
> <list@stripped>
Thomas> writes:
>> 
Thomas> If I use my own compiled version of MySQL 3.23.2 (using the new
Thomas> gcc 2.95)
Thomas> after a while of use, some MySQL threads do not quit (no timeout
Thomas> or not
Thomas> properly closed, I am not sure) but keep heating the CPU and
Thomas> increasing the
Thomas> load. I can kill them using mysqladmin kill and all is normal
Thomas> then. But it's
Thomas> quite annoying to do this every time by hand (the server is quite
Thomas> busy and
Thomas> I'm not 24hrs online, like my computer is).
>> 
Thomas> This problem does not occur with the executables in the rpm files,
Thomas> which are
Thomas> compiled with egcs 1.0.3 I believe.
Thomas> So somewhere something goes wrong. These are my configure
Thomas> settings:
>> 
>> 
Thomas> --with-pthread --enable-thread-safe-clienbt --enable-assembler --wit
Thomas> h-mysqld
Thomas> -user=mysql --without-readline --host=i686-pc-linux-gnu
>> 
Thomas> Might the --enable-assembler option be unsafe? And what else could
Thomas> I try to
Thomas> find the offending code bits so they can be fixed?
>> 
>> Hi!
>> 
>> Could you please post the output of 'mysqladmin proc' when this happens.
>> Your compile line should be ok (I am quite sure that --enable-assembler
>> works)!
>> 
>> Regards,
>> Monty

Thomas> I have recompiled the server with debuggin on and enable-assembler of; it
Thomas> has not happened since
Thomas> so I cannot copypaste the output of mysqladmin proc right now. What was
Thomas> happening is that the
Thomas> queries do get performed, but very slowely, so mysqladmin proc just shows
Thomas> the threads as executing
Thomas> the queries (all selects).

The problem is probably SAFE_MALLOC, which does a LOT of checking for
each memory allocation.

To get this a bit faster, remove '-DSAFE_MALLOC from configure and
configure + recompile.

(This will by the way be default in 3.23.3 when you use --with-debug)

Regards,
Monty
Thread
Dangling threads take all CPUThomas van Gulick1 Sep
  • Dangling threads take all CPUMichael Widenius2 Sep
  • Re: Dangling threads take all CPUThomas van Gulick2 Sep
    • Re: Dangling threads take all CPUMichael Widenius2 Sep