mirror of
https://github.com/postgres/postgres.git
synced 2025-06-14 18:42:34 +03:00
Invent ResourceOwner mechanism as per my recent proposal, and use it to
keep track of portal-related resources separately from transaction-related resources. This allows cursors to work in a somewhat sane fashion with nested transactions. For now, cursor behavior is non-subtransactional, that is a cursor's state does not roll back if you abort a subtransaction that fetched from the cursor. We might want to change that later.
This commit is contained in:
@ -8,7 +8,7 @@
|
||||
*
|
||||
*
|
||||
* IDENTIFICATION
|
||||
* $PostgreSQL: pgsql/src/backend/tcop/postgres.c,v 1.423 2004/07/11 00:18:44 momjian Exp $
|
||||
* $PostgreSQL: pgsql/src/backend/tcop/postgres.c,v 1.424 2004/07/17 03:29:00 tgl Exp $
|
||||
*
|
||||
* NOTES
|
||||
* this is the "main" module of the postgres backend and
|
||||
@ -2796,6 +2796,12 @@ PostgresMain(int argc, char *argv[], const char *username)
|
||||
DisableCatchupInterrupt();
|
||||
debug_query_string = NULL;
|
||||
|
||||
/*
|
||||
* If there's an active portal, mark it as failed
|
||||
*/
|
||||
if (ActivePortal)
|
||||
ActivePortal->status = PORTAL_FAILED;
|
||||
|
||||
/*
|
||||
* Make sure we are in a valid memory context during recovery.
|
||||
*
|
||||
|
Reference in New Issue
Block a user