(Damn I hate those lists that don't come with a Reply-To to the list!
Resending...)

On 13.11.2007 17:39 CE(S)T, Baron Schwartz wrote:
> Yves Goergen wrote:
>> Row level locking can only lock rows that exist. Creating new rows (that
>> would have an influence on my MAX value) are still possible and thus row
>> level locking is not what I need. I really need locking an entire table
>> for every other read or write access.
> 
> InnoDB can also lock the gap, which will prevent new rows that would 
> have been returned by the SELECT.  The manual has more info on this in 
> the section on consistent reads in InnoDB.  FOR UPDATE will do what you 
> need.

I've read about that "gap" but it sounded like "the place [somewhere]
before a record where one could insert a new record into". Not sure what
that should be. I'm not aware of the InnoDB internals. I know that
usually (?) when a new record is stored, it is written to where is
enough space for it, linked from a free pointer index. If one is locked,
another one might be used. Order doesn't matter in relational databases.

-- 
Yves Goergen "LonelyPixel" <[EMAIL PROTECTED]>
Visit my web laboratory at http://beta.unclassified.de


-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:    http://lists.mysql.com/[EMAIL PROTECTED]

Reply via email to