Walter,

thank you very much for trying to explain that to me. Unfortunately I've got 
lost somewhere in the middle of your response...
 
 >>- If you are updating or deleting just one row, then no conflict can happen 
 >>with your settings. But if you want >>to update or delete several rows then 
 >>conflicts can happens.

In my test case I have two threads (or applications, I do not think that does 
have matter) which are constantly updating the same row.

 >>- Transaction T1 starts, transaction T2 starts, transaction T1 wants to 
 >>update some rows, transaction T2 >>wants to update some different rows. No 
 >>problems until now. 

This is not my case because my transactions are working on the same row but so 
far I understand that, and I agree with you. Different rows, no deadlock should 
happen.

>>Transaction T2 wants to update (and therefore blocks) a row and after that 
>>transaction T1 wants to update >>that row. Deadlock because transaction T1 is 
>>older than transaction T2.

I do not understand, why deadlock? Why T1 does not wait for T2 to 
commit/rollback?

 

 >>If transaction T1 blocks a row and after that transaction T2 wants to update 
 >>that row then transaction T2 will >>wait. But if transaction T2 blocks a row 
 >>and after that transaction T1 wants to update that row will have a 
 >>>>deadlock.

I do not understand this, why there will be a deadlock? Because the older 
transaction could not be first to block the row?

I thought I've had all figured out:(

  


 



Reply via email to