Hi -

I'm running 4.0.13-Max on Linux via PHP.  I don't have BDB shared mode set.

I've been experimenting with the BDB transactions and been getting confusing results.  
My tests
are separate threads running a PHP test script.

It seems that a transaction can acquire 1 or more locks, then fail on a 1213 error 
(deadlock). 
Furthermore, it seems that the deadlock predictor is getting some false positives, so 
I can get
this result for a non-deadlock lock contention.

My questions are as follows:

1. If a transaction gets a 1213 error while trying to acquire a lock to execute the 
query, has the
transaction ALREADY been rolled back ?

I'd rather not re-start a transaction if there's a chance the other lock contender 
could be waited
out (eg: retry the query and wait up to 10 times while getting the same error).

2. If the transaction has in fact been rolled back for me, what's a reasonable 
transaction retry
policy ?

I'd like ALL the transactions to complete successfully, but I don't want to have to 
retry a
transaction, say, 100 times.

Thanks.

- Mike.


__________________________________
Do you Yahoo!?
Protect your identity with Yahoo! Mail AddressGuard
http://antispam.yahoo.com/whatsnewfree

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

Reply via email to