Quoting Daniel Carrera daniel.carrera@theingots.org:
Michael Prasuhn wrote:
A lot of confusion here, from others, not just Daniel. Overall the biggest benefit is that InnoDB supports row-level locking versus table-locking on writes.
Could you confirm that row-level locking means that you can do multiple INSERTs at the same time?
Suppose that you are going to do 50 INSERTs in one transaction (my non-Drupal site does this at one place). Can two users do the 50-INSERT operation at the same time? (the application is a markbook/gradebook - the inserts are the marks/grades for 50 students).
If the operation is transactionalized and the users are updating some of the same rows the one who updates last looses because the engine is smart enough to know that the second update cannot be allowed to happen because the signature of the row has changed; the user can then be warned that the data changed prior to his update. Or, in some cases, the rows can be locked up front so the second user waits on the first user to release the data rows before he can even view the data. In the non-transactinalized case the second update wins and the original update is lost without warning; we see this in the issue queue quite often with people changing the status column from the changed value to previous value incidentally.
-- Earnie http://r-feed.com Make a Drupal difference and review core patches.