Patrick Duda <[EMAIL PROTECTED]> wrote on 10/02/2006 16:28:56:

> I guess I don't understand this locking stuff.  I have a InnoDB table 
that 
> has one thing in it, a counter.  All I want to do is have multiple 
> instances of the code read this counter and increment it.  I want to 
make 
> sure that each one is unique.
> 
> Here is what I am doing in java:
> 
> c.setAutoCommit(false);
> ...
> rs = statement.executeQuery("select request_id from requestid_innodb for 

> update");
> ...
> String updateQuery = "update requestid_innodb set request_id=";
>   updateQuery = updateQuery + nextRequestId;
> tempStatement = c.createStatement();
> tempStatement.executeUpdate(updateQuery);
> ...
> c.commit();
> c.setAutoCommit(true);
> 
> If I have multiple instances of this code running I end up with 
duplicate 
> keys.  I thought this was suppose to lock the table so that would not 
happen.
> 
> What am I not doing right?  What am I not understanding about locking?

I think this problem is explained in detail at
http://dev.mysql.com/doc/refman/5.0/en/innodb-locking-reads.html

Alec 



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

Reply via email to