Re: SSI patch version 14
От | Heikki Linnakangas |
---|---|
Тема | Re: SSI patch version 14 |
Дата | |
Msg-id | 4D3FCB47.6060805@enterprisedb.com обсуждение исходный текст |
Ответ на | Re: SSI patch version 14 ("Kevin Grittner" <Kevin.Grittner@wicourts.gov>) |
Ответы |
Re: SSI patch version 14
|
Список | pgsql-hackers |
On 25.01.2011 22:53, Kevin Grittner wrote: > Heikki Linnakangas<heikki.linnakangas@enterprisedb.com> wrote: >> On 25.01.2011 05:30, Kevin Grittner wrote: > >> The readme says this: >>> 4. PostgreSQL supports subtransactions -- an issue not mentioned >>> in the papers. >> >> But I don't see any mention anywhere else on how subtransactions >> are handled. If a subtransaction aborts, are its predicate locks >> immediately released? > > No. Here's the reasoning. Within a top level transaction, you > might start a subtransaction, read some data, and then decide based > on what you read that the subtransaction should be rolled back. If > the decision as to what is part of the top level transaction can > depend on what is read in the subtransaction, predicate locks taken > by the subtransaction must survive rollback of the subtransaction. > > Does that make sense to you? Yes, that's what I suspected. And I gather that all the data structures in predicate.c work with top-level xids, not subxids. When looking at an xid that comes from a tuple's xmin or xmax, for example, you always call SubTransGetTopmostTransaction() before doing much else with it. > Is there somewhere you would like to > see that argument documented? README-SSI . -- Heikki Linnakangas EnterpriseDB http://www.enterprisedb.com
В списке pgsql-hackers по дате отправления: