Home » Performance » MySQL » From time to time very slow UPDATE
icon5.gif  From time to time very slow UPDATE [message #978] Fri, 23 March 2007 13:23 Go to next message
4matic  is currently offline 4matic
Messages: 2
Registered: March 2007
Junior Member
I have a system:
Windows XP SP2
MySQL 5.0.27
PHP 5.2.0 (mysqli ext)

CREATE TABLE `parts` (                                
          `partid` int(10) unsigned NOT NULL auto_increment,  
          `oenumsearch` char(30) NOT NULL,                    
          `tmid` smallint(5) unsigned NOT NULL default '0',   
          `oenum` char(35) NOT NULL,                          
          `isset` smallint(5) unsigned default '0',           
          `numtypeid` smallint(5) unsigned default '0',       
          `textid` int(10) unsigned default NULL,             
          `texts` char(255) default NULL,                     
          `isttx` tinyint(1) unsigned NOT NULL default '0',   
          `isimg` tinyint(1) unsigned NOT NULL default '0',   
          `isauto` tinyint(1) unsigned NOT NULL default '0',  
          `remarks` char(255) default NULL,                   
          PRIMARY KEY  (`partid`),                            
          KEY `tmid` (`tmid`),                                
          KEY `oenums` (`oenumsearch`,`tmid`),                
          KEY `oenumsearch` (`oenumsearch`),                  
          KEY `isset` (`isset`),                              
          KEY `numtypeid` (`numtypeid`),                      
          KEY `textid` (`textid`)                             
        ) ENGINE=InnoDB

I start transaction and update some tables. One of the updated tables is `parts`. When start query:
UPDATE `parts` SET `textid`=1471, `texts`="Some text" WHERE `partid`=47437


Database is stuck, and query executed about 300-400 seconds. In this time I cant start another query. Another query is wait while ends query for update.
This stuks is happend form time to time. Only one client sends query, thats means database is not busy.

Where looking for problem? I dont uderstand what to do. Help me, please.

P.S. Sorry for my dreadful English, my native language is PHP Smile.

[Updated on: Fri, 23 March 2007 13:31]

Re: From time to time very slow UPDATE [message #982 is a reply to message #978 ] Sun, 25 March 2007 11:01 Go to previous messageGo to next message
Speeple  is currently offline Speeple
Messages: 91
Registered: August 2006
Member
How many rows does this table have?

You have a quite a few indexes which will slow down updates.

Also note that KEY `oenumsearch` (`oenumsearch`) is a redundent index. Key lookups on the column oenumsearch can happily be performed on the KEY `oenums` (`oenumsearch`,`tmid`) index.


Martin Gallagher | Speeple: The latest news
Re: From time to time very slow UPDATE [message #985 is a reply to message #982 ] Mon, 26 March 2007 03:20 Go to previous message
4matic  is currently offline 4matic
Messages: 2
Registered: March 2007
Junior Member
Quote:

Also note that KEY `oenumsearch` (`oenumsearch`) is a redundent index. Key lookups on the column oenumsearch can happily be performed on the KEY `oenums` (`oenumsearch`,`tmid`) index.

Thanks. I will drop this index. I knew this, but I did this for sure.

Quote:

How many rows does this table have?

About 7 000 000 and still growing. It will stop about 20 000 000 rows.

Quote:

You have a quite a few indexes which will slow down updates

I understand, that indexes is slow down updates. I dont understand, why one update fast, another update - slow?
Previous Topic:Is This ODBC connectivity error or VB application error
Next Topic:Slow query
Goto Forum:
  



Current Time: Fri Jan 9 00:11:58 EST 2009

Total time taken to generate the page: 0.01173 seconds
.:: Contact :: Home :: MySQL Support by Percona.com ::.

Powered by: FUDforum 2.7.5.
Copyright ©2001-2006 FUD Forum Bulletin Board Software

MySQL Performance | Forum authority Badge