File tree Expand file tree Collapse file tree 2 files changed +12
-1
lines changed Expand file tree Collapse file tree 2 files changed +12
-1
lines changed Original file line number Diff line number Diff line change @@ -2463,6 +2463,8 @@ PrepareTransaction(void)
2463
2463
s -> state = TRANS_DEFAULT ;
2464
2464
2465
2465
RESUME_INTERRUPTS ();
2466
+
2467
+ CallXactCallbacks (XACT_EVENT_POST_PREPARE );
2466
2468
}
2467
2469
2468
2470
@@ -5848,3 +5850,10 @@ xact_redo(XLogReaderState *record)
5848
5850
else
5849
5851
elog (PANIC , "xact_redo: unknown op code %u" , info );
5850
5852
}
5853
+
5854
+ /* Get gid for ongoing PREPARE */
5855
+ const char *
5856
+ GetPrepareGid (void )
5857
+ {
5858
+ return prepareGID ;
5859
+ }
Original file line number Diff line number Diff line change @@ -111,7 +111,8 @@ typedef enum
111
111
XACT_EVENT_PREPARE ,
112
112
XACT_EVENT_PRE_COMMIT ,
113
113
XACT_EVENT_PARALLEL_PRE_COMMIT ,
114
- XACT_EVENT_PRE_PREPARE
114
+ XACT_EVENT_PRE_PREPARE ,
115
+ XACT_EVENT_POST_PREPARE
115
116
} XactEvent ;
116
117
117
118
typedef void (* XactCallback ) (XactEvent event , void * arg );
@@ -399,6 +400,7 @@ extern void RegisterXactCallback(XactCallback callback, void *arg);
399
400
extern void UnregisterXactCallback (XactCallback callback , void * arg );
400
401
extern void RegisterSubXactCallback (SubXactCallback callback , void * arg );
401
402
extern void UnregisterSubXactCallback (SubXactCallback callback , void * arg );
403
+ extern const char * GetPrepareGid (void );
402
404
403
405
extern int xactGetCommittedChildren (TransactionId * * ptr );
404
406
You can’t perform that action at this time.
0 commit comments