Kamil Kaczkowski <kamil(at)kamil(dot)eisp(dot)pl> writes:
> I have problems with deadlocks caused by(at least I think so) row-level
> locks and I can't find the reason.
The failure seems clearly a deadlock on row-level locks. Are you
certain you've removed all relevant FKs (those pointing to the table
as well as out of it)? Another possible explanation is if the UPDATE
command can update more than one row --- in that case different backends
might happen to reach the target rows in different orders.
regards, tom lane