diff options
Diffstat (limited to 'src/include')
-rw-r--r-- | src/include/access/xact.h | 6 | ||||
-rw-r--r-- | src/include/executor/spi.h | 2 | ||||
-rw-r--r-- | src/include/nodes/parsenodes.h | 1 |
3 files changed, 7 insertions, 2 deletions
diff --git a/src/include/access/xact.h b/src/include/access/xact.h index 426e77846f9..e8579dcd478 100644 --- a/src/include/access/xact.h +++ b/src/include/access/xact.h @@ -368,12 +368,14 @@ extern bool TransactionIdIsCurrentTransactionId(TransactionId xid); extern void CommandCounterIncrement(void); extern void ForceSyncCommit(void); extern void StartTransactionCommand(void); +extern void SaveTransactionCharacteristics(void); +extern void RestoreTransactionCharacteristics(void); extern void CommitTransactionCommand(void); extern void AbortCurrentTransaction(void); extern void BeginTransactionBlock(void); -extern bool EndTransactionBlock(void); +extern bool EndTransactionBlock(bool chain); extern bool PrepareTransactionBlock(const char *gid); -extern void UserAbortTransactionBlock(void); +extern void UserAbortTransactionBlock(bool chain); extern void BeginImplicitTransactionBlock(void); extern void EndImplicitTransactionBlock(void); extern void ReleaseSavepoint(const char *name); diff --git a/src/include/executor/spi.h b/src/include/executor/spi.h index eafcc7a4e4d..83c28b79bfa 100644 --- a/src/include/executor/spi.h +++ b/src/include/executor/spi.h @@ -160,7 +160,9 @@ extern int SPI_register_trigger_data(TriggerData *tdata); extern void SPI_start_transaction(void); extern void SPI_commit(void); +extern void SPI_commit_and_chain(void); extern void SPI_rollback(void); +extern void SPI_rollback_and_chain(void); extern void SPICleanup(void); extern void AtEOXact_SPI(bool isCommit); diff --git a/src/include/nodes/parsenodes.h b/src/include/nodes/parsenodes.h index 81278e40197..bdd2bd2fd9c 100644 --- a/src/include/nodes/parsenodes.h +++ b/src/include/nodes/parsenodes.h @@ -2998,6 +2998,7 @@ typedef struct TransactionStmt List *options; /* for BEGIN/START commands */ char *savepoint_name; /* for savepoint commands */ char *gid; /* for two-phase-commit related commands */ + bool chain; /* AND CHAIN option */ } TransactionStmt; /* ---------------------- |