Re: Hot Standby: subxid cache changes
От | Heikki Linnakangas |
---|---|
Тема | Re: Hot Standby: subxid cache changes |
Дата | |
Msg-id | 499414DE.5080303@enterprisedb.com обсуждение исходный текст |
Ответ на | Re: Hot Standby: subxid cache changes (Simon Riggs <simon@2ndQuadrant.com>) |
Ответы |
Re: Hot Standby: subxid cache changes
|
Список | pgsql-hackers |
Simon Riggs wrote: > On Thu, 2009-02-12 at 09:50 +0200, Heikki Linnakangas wrote: >> So far so good, but what about all the other callers of >> SubTransGetParent()? For example, XactLockTableWait will fail an >> assertion if asked to wait on a subtransaction which is then released. > > I agree that it could fail the assertion, though it is clear that the > assertion should now be removed. No, then you just get an infinite loop instead, trying to get the parent of 0 over and over again. > The logic is: if there is no lock table entry for that xid *and* it is > not in progress *and* it is not in pg_subtrans, then it must have been > an aborted subtransaction of a currently active xact or it has otherwise > completed. Right, we got it right that far. But after the subtransaction has completed, the question is: what's its parent? That's what the patch got wrong. -- Heikki Linnakangas EnterpriseDB http://www.enterprisedb.com
В списке pgsql-hackers по дате отправления: