From: Claudio Nanni Date: January 7 2010 7:02pm Subject: MySQL CPU Deadlock on FreeBSD MyISAM (not INNODB ddlk) (This is really hard stuff !) List-Archive: http://lists.mysql.com/mysql/220131 Message-Id: <53bcf3a61001071102x262f7a73rdae8cfa14c8f32c3@mail.gmail.com> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary=001636457b2698a711047c97b6ed --001636457b2698a711047c97b6ed Content-Type: multipart/alternative; boundary=001636457b2698a707047c97b6eb --001636457b2698a707047c97b6eb Content-Type: text/plain; charset=ISO-8859-1 MySQL 5.0.81 FreeBSD 7 16GB RAM 4xQuad Core Xeon Local Disks 6x73GB SAS The server behaves normally, load between 1 and 2, but has cpu load spikes during the day, 3 or 4, and if the load goes over 20, it will go in a death spiral collapsing, I have enough memory ,buffers and disk. From my investigations it seems related to queries that go on disk (temporary tables) and then the server becomes a PCXT with connections backlogging until death, but it really seems a bug, I cant imagine a server collapsing like this. The load of the server is not extremely high an average of 1000 statements per second, 30 connections, 150k rows accesses/sec. what I saw from the vm stat is that in the moment of the deadlock the number of context switches becomes huge and processes waiting for cpu from almost 0 grow up to 100. Also it seems from 'avm' value that the server is actively using swap, but from top it says 4gb of swap and free! The strange thing is that the sort buffer is very big and it stills goes on disk to sort. Are the per-connection buffers too big? I attach some statistics, dinner paid for any clue! There is IOSTATS, TOP, and VMSTATS for two deadlock issues happened two consequent nights one at 22:06 one at 22:24 Thanks -- Claudio --001636457b2698a707047c97b6eb Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable
MySQL 5.0.81
FreeBSD 7
16GB RAM
4= xQuad Core Xeon
Local Disks 6x73GB SAS

The server behaves normally, load between 1 and 2, but has cpu load spikes during the day, 3 or 4, and if the load goes over 20, it will go in a death spiral collapsing,
I have enough memory ,buffers and disk.
From my investigations it seems related to queries that go on disk (temporary tables) and then the server becomes a PCXT with connections backlogging until death,
but it really seems a bug, I cant imagine a ser= ver collapsing like this.
The load of the server is not extremely high an average of 1000 statements = per second, 30 connections, 150k rows accesses/sec.
what I saw from the vm stat is that in the moment of the deadlock the number of context switches becomes huge and processes waiting for cpu from almost 0 grow up to 100.
Also it seems from 'avm' value that the server is actively using sw= ap, but from top it says 4gb of swap and free!

The strange thing is = that the sort buffer is very big and it stills goes on disk to sort.
Are the per-connection buffers too big?

I attach some statistics, di= nner paid for any clue!

There is IOSTATS, TOP, and VMSTATS for=A0 tw= o deadlock issues happened two consequent nights one at 22:06 one at 22:24<= br>

Thanks


--
Clau= dio
--001636457b2698a707047c97b6eb-- --001636457b2698a711047c97b6ed Content-Type: application/zip; name="ddlock-investigation-001.LOG.zip" Content-Disposition: attachment; filename="ddlock-investigation-001.LOG.zip" Content-Transfer-Encoding: base64 X-Attachment-Id: f_g45wn58f0 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 SwUGAAAAAAEAAQBXAAAAvSkAAAAA --001636457b2698a711047c97b6ed--