[support] MyISAM vs InnoDB

Earnie Boyd earnie at users.sourceforge.net
Mon Mar 23 19:55:16 UTC 2009


Quoting Daniel Carrera <daniel.carrera at 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.

-- http://for-my-kids.com/  -- http://www.4offer.biz/



More information about the support mailing list