Thursday 09 December 2010 6:13:22 am
Still a lot of transaction fatal errors when the website get a little complex in term of number of objects (few thousands). User get a catastrophic experience cause of those fatal error. I had those problem on a few website and was never able to identify clearly the problem, if someone has an idea it'd be great. Cheers Example :
[ Dec 09 2010 14:40:15 ] [] eZMySQLDB:Query error: Lock wait timeout exceeded; try restarting transaction. Query: UPDATE ezcontentobject_tree SET modified_subnode=1291901964 WHERE node_id IN ( 1, 2, 19197, 94, 325, 93566 )
[ Dec 09 2010 14:40:15 ] [] eZDBInterface::commit TRANSID-2f67855008ebdd1013f6c77b60074:Transaction in progress failed due to DB error, transaction was rollbacked. Transaction ID is TRANSID-2f67855008ebdd1013f6c77b60074.
[ Dec 09 2010 14:40:41 ] [89.11.208.85] eZMySQLDB:Query error: Lock wait timeout exceeded; try restarting transaction. Query: DELETE FROM ezuser_discountrule WHERE contentobject_id = '99164'
[ Dec 09 2010 14:40:15 ] [] eZMySQLDB:Query error: Lock wait timeout exceeded; try restarting transaction. Query: UPDATE ezcontentobject_tree SET modified_subnode=1291901964 WHERE node_id IN ( 1, 2, 19197, 94, 325, 93566 )
[ Dec 09 2010 14:40:15 ] [] eZDBInterface::commit TRANSID-2f67855008ebdd1013f6c77b60074:Transaction in progress failed due to DB error, transaction was rollbacked. Transaction ID is TRANSID-2f67855008ebdd1013f6c77b60074. [ Dec 09 2010 14:40:41 ] [89.11.208.85] eZMySQLDB:Query error: Lock wait timeout exceeded; try restarting transaction. Query: DELETE FROM ezuser_discountrule WHERE contentobject_id = '99164'
This is not caused directly by eZPublish but by your database which was obviously not modified in terms of memory/settings/my.cnf to reflect to multiple thousand objects. In order to function proberly, eZPublish created several sql-statements which get executed one after another in the database. If one query takes too long and reaches an configured limit inside mysql, mysql itself aborts averything and throws an error back to php. Table lock timeouts can occour, when an update/insert statements takes tooo long to execute due to large number of dataset which does not fit into configured memory. See mysql.com for documentation on performance tuning or refer to one of the dozends of forum threads in this forum to solve this issue. Also try to create a ramdisk for mysql temporary tables which might lead to an astonishing performance increase on the backend. google is your friend. To the url-alias problems: i second that issues. It occurs on eZPublish 4.0.7, 4.1, 4.2, 4.3 and freshly installed 4.4. The most damaged database belongs to a 3 month old eZPublish 4.3 which holds several thousand objects in approx 14 languages each. After some weeks of use by editors, the ez-errorlog fills with those items and there's nothing i can do about. Running updateniceurls does not solve this particular issue. My Editors mostly have been moving objects fro a to b and translating/editing them. Nothing fancy/nasty though. cheers, chris
Hannover, Germany
eZ-Certified http://auth.ez.no/certification/verify/395613
|