Re: Concurrent MERGE
От | Tom Lane |
---|---|
Тема | Re: Concurrent MERGE |
Дата | |
Msg-id | 4039.1281048073@sss.pgh.pa.us обсуждение исходный текст |
Ответ на | Re: Concurrent MERGE (Josh Berkus <josh@agliodbs.com>) |
Ответы |
Re: Concurrent MERGE
|
Список | pgsql-hackers |
Josh Berkus <josh@agliodbs.com> writes: > Yes; it's a major project. Our detector works pretty well for deadlocks > which are 2-process locks or even several processes all locking against > the same first process. However, triangular and quadralateral deadlocks > (which I've seen more than once) it completely cannot handle, Hm? Please explain what you're talking about. > and some > types of activity which can cause deadlocks (like autovacuum or DDL > activity) also seem to be outside its purview. There's some known issues with deadlocks involving LWLocks as well as regular locks, which I agree aren't fixable without some significant rework. But I don't believe there's anything fundamentally wrong with the deadlock detector --- the real problem there is stretching LWLocks beyond their design intention, namely to be used only for situations where deadlock is impossible. > Also, even where the deadlock detector does its job, it's still the most > expensive type of serialization failure: Well, that's certainly true --- you don't want deadlock recovery to be part of any high-performance path. > 3. deadlocks can, and do, result in cancelling several transactions > instead of just one; there is no "winner" which is allowed to complete. Not sure I believe this either; one deadlock kills one transaction. If you lose multiple transactions I think you had multiple deadlocks. regards, tom lane
В списке pgsql-hackers по дате отправления: