Hello-
We have recently migrated to INNODB from MYISAM; We have a process which update a table useing the fllowing Query;
Call: UPDATE harvest_document SET ExtractedInLastRun = ?, LastUpdated = ? WHERE (((RobotName = ?) AND (ExecutionId <> ?)) AND (ExtractedInLastRun <> ?)) bind => [n, 2012-04-27 12:23:08.503, YKSW, a281141a0000001a, n]
Query: UpdateAllQuery(referenceClass=Kapow_harvest_document_1 sql="UPDATE harvest_document SET ExtractedInLastRun = ?, LastUpdated = ? WHERE (((RobotName = ?) AND (ExecutionId <> ?)) AND (ExtractedInLastRun <> ?))")
--------------------------------------------------
Earlier in MYISAM, we faced no issues, but after migrating to INNODB, we are getting some dead lock error [Errpr code :1213 & Error Code :1205]
My Understanding is INNODB promotes row level locking; So, basically that means the rows which gets updated by the above query, will be locked; But we noticed whenever this update query runs, most of the other operations dealing with other records in that table has become extremely slow; Sometimes we get the Deal Lock error;
We recenly updated the mysql INNODB configuration as below to improve the deadlock;
innodb_table_locks=0
innodb_lock_wait_timeout=500
sync_binlog=1
Now the dead lock is limited but still we noticed, the other oprations dealing with this particulr table becomes slow when this update query runs;
Can anybody suggest are we are missing anything here, any INNODB configuration changes ? or any indexing needed on any particular field ?
We have no indexing on this table right now;
We have recently migrated to INNODB from MYISAM; We have a process which update a table useing the fllowing Query;
Call: UPDATE harvest_document SET ExtractedInLastRun = ?, LastUpdated = ? WHERE (((RobotName = ?) AND (ExecutionId <> ?)) AND (ExtractedInLastRun <> ?)) bind => [n, 2012-04-27 12:23:08.503, YKSW, a281141a0000001a, n]
Query: UpdateAllQuery(referenceClass=Kapow_harvest_document_1 sql="UPDATE harvest_document SET ExtractedInLastRun = ?, LastUpdated = ? WHERE (((RobotName = ?) AND (ExecutionId <> ?)) AND (ExtractedInLastRun <> ?))")
--------------------------------------------------
Earlier in MYISAM, we faced no issues, but after migrating to INNODB, we are getting some dead lock error [Errpr code :1213 & Error Code :1205]
My Understanding is INNODB promotes row level locking; So, basically that means the rows which gets updated by the above query, will be locked; But we noticed whenever this update query runs, most of the other operations dealing with other records in that table has become extremely slow; Sometimes we get the Deal Lock error;
We recenly updated the mysql INNODB configuration as below to improve the deadlock;
innodb_table_locks=0
innodb_lock_wait_timeout=500
sync_binlog=1
Now the dead lock is limited but still we noticed, the other oprations dealing with this particulr table becomes slow when this update query runs;
Can anybody suggest are we are missing anything here, any INNODB configuration changes ? or any indexing needed on any particular field ?
We have no indexing on this table right now;