MySQL Forums
Forum List  »  Performance

Re: Lock wait timeout exceeded; try restarting transaction
Posted by: Rick James
Date: January 09, 2016 11:52PM

"1000" is a reasonable compromise value.

Smaller than that is less efficient.

Bigger than that is into "diminishing returns" -- probably you can't get more than 1% improvement when going from 1000 to 10000.

Too big leads to replication delays.

Too big leads to various limits being hit in various ways. Your comment about Java is must one of them.

Too big could exceed InnoDB's undo log. At that point, it has to work harder to achieve the "undo" semantics. This slows down the query by perhaps a factor of two.

Yes, I am doing a lot of "hand waving". But I believe that 1000 is a "safe" compromise in virtually all cases. And within a tiny percentage of optimal.

Options: ReplyQuote

Written By
Re: Lock wait timeout exceeded; try restarting transaction
January 09, 2016 11:52PM

Sorry, you can't reply to this topic. It has been closed.

Content reproduced on this site is the property of the respective copyright holders. It is not reviewed in advance by Oracle and does not necessarily represent the opinion of Oracle or any other party.