Re: Understanding updates and deadlocks more clearly

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Friday, September 2, 2022, Wells Oliver <wells.oliver@xxxxxxxxx> wrote:
Hey folks: I want to clarify a few things about locks on updates:

1- can two processes update the same table if they are updating different rows?

2- in the event of two processes trying to update the same row, does this always result in a deadlock?

3- is there a way to create a system whereby potentially concurrent processes can update the same row in a given table, can the server be made to queue those updates, etc?

Is it just a no-go to try and have a situation where concurrent processes are trying to update the same record?
 

Processes wait to acquire the lock necessary for updating a row.  While they are waiting they still retain any locks they already hold.  Deadlock means someone who holds a lock you are waiting for presently is waiting for a lock that the first someone holds.  Thus they will wait forever unable to acquire the lock held by the other.

It thus requires trying to update at least two different records arrived at from different directions.

David J.


[Index of Archives]     [Postgresql Home]     [Postgresql General]     [Postgresql Performance]     [Postgresql PHP]     [Postgresql Jobs]     [PHP Users]     [PHP Databases]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Databases]     [Yosemite Forum]

  Powered by Linux