mirror of
https://github.com/postgres/postgres.git
synced 2025-07-18 17:42:25 +03:00
Nested transactions. There is still much left to do, especially on the
performance front, but with feature freeze upon us I think it's time to drive a stake in the ground and say that this will be in 7.5. Alvaro Herrera, with some help from Tom Lane.
This commit is contained in:
@ -6,7 +6,7 @@
|
||||
* Portions Copyright (c) 1996-2003, PostgreSQL Global Development Group
|
||||
* Portions Copyright (c) 1994, Regents of the University of California
|
||||
*
|
||||
* $PostgreSQL: pgsql/src/include/commands/trigger.h,v 1.45 2003/11/29 22:40:59 pgsql Exp $
|
||||
* $PostgreSQL: pgsql/src/include/commands/trigger.h,v 1.46 2004/07/01 00:51:40 tgl Exp $
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
@ -151,44 +151,12 @@ extern void ExecARUpdateTriggers(EState *estate,
|
||||
ItemPointer tupleid,
|
||||
HeapTuple newtuple);
|
||||
|
||||
|
||||
/*
|
||||
* Deferred trigger stuff
|
||||
*/
|
||||
typedef struct DeferredTriggerStatusData
|
||||
{
|
||||
Oid dts_tgoid;
|
||||
bool dts_tgisdeferred;
|
||||
} DeferredTriggerStatusData;
|
||||
|
||||
typedef struct DeferredTriggerStatusData *DeferredTriggerStatus;
|
||||
|
||||
typedef struct DeferredTriggerEventItem
|
||||
{
|
||||
Oid dti_tgoid;
|
||||
int32 dti_state;
|
||||
} DeferredTriggerEventItem;
|
||||
|
||||
typedef struct DeferredTriggerEventData *DeferredTriggerEvent;
|
||||
|
||||
typedef struct DeferredTriggerEventData
|
||||
{
|
||||
DeferredTriggerEvent dte_next; /* list link */
|
||||
int32 dte_event;
|
||||
Oid dte_relid;
|
||||
ItemPointerData dte_oldctid;
|
||||
ItemPointerData dte_newctid;
|
||||
int32 dte_n_items;
|
||||
/* dte_item is actually a variable-size array, of length dte_n_items */
|
||||
DeferredTriggerEventItem dte_item[1];
|
||||
} DeferredTriggerEventData;
|
||||
|
||||
|
||||
extern void DeferredTriggerInit(void);
|
||||
extern void DeferredTriggerBeginXact(void);
|
||||
extern void DeferredTriggerEndQuery(void);
|
||||
extern void DeferredTriggerEndXact(void);
|
||||
extern void DeferredTriggerAbortXact(void);
|
||||
extern void DeferredTriggerBeginSubXact(void);
|
||||
extern void DeferredTriggerEndSubXact(bool isCommit);
|
||||
|
||||
extern void DeferredTriggerSetState(ConstraintsSetStmt *stmt);
|
||||
|
||||
|
Reference in New Issue
Block a user