Re: About subxact and xact nesting level...

Поиск
Список
Период
Сортировка
От dandl
Тема Re: About subxact and xact nesting level...
Дата
Msg-id 001b01d1a47d$5e95d500$1bc17f00$@andl.org
обсуждение исходный текст
Ответ на Re: About subxact and xact nesting level...  (Thomas Munro <thomas.munro@enterprisedb.com>)
Список pgsql-hackers
> From: Thomas Munro [mailto:thomas.munro@enterprisedb.com]

> > The file xact.c contains references to sub-transactions (subxact) and
> > transaction nesting level, but no obvious documentation about what
> > these correspond to in SQL. A search shows that plpython supports
> > something called “proper sub transactions”. There are random mentions
> > of subtransactions in the release notes, but nothing substantive that
> > I can find, and nothing about transaction nesting.
> >
> > Any pointers to docs or help to understand much appreciated.
>
> Subtransactions are used to implement SAVEPOINT, and also BEGIN blocks with
> EXCEPTION clauses in plpgsql.
>
> http://www.postgresql.org/docs/9.5/static/sql-savepoint.html
> http://www.postgresql.org/docs/9.5/static/plpgsql-control-structures.html#PLPGSQL-ERROR-TRAPPING

Thanks. I guess that explains the nesting level too. It seems there is an internal API based on:
* BeginInternalSubTransaction
* RollbackAndReleaseCurrentSubTransaction
* ReleaseCurrentSubTransaction

This looks like something I shall need to use. I have the plandl language handler all working, and understanding the
transactionenvironment is turning out to be a major challenge.  

Regards
David M Bennett FACS

Andl - A New Database Language - andl.org








В списке pgsql-hackers по дате отправления:

Предыдущее
От: Robert Haas
Дата:
Сообщение: Re: Refactor pg_dump as a library?
Следующее
От: Andres Freund
Дата:
Сообщение: Re: Re: [COMMITTERS] pgsql: Avoid extra locks in GetSnapshotData if old_snapshot_threshold <