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)
24632463 s -> state = TRANS_DEFAULT ;
24642464
24652465 RESUME_INTERRUPTS ();
2466+
2467+ CallXactCallbacks (XACT_EVENT_POST_PREPARE );
24662468}
24672469
24682470
@@ -5848,3 +5850,10 @@ xact_redo(XLogReaderState *record)
58485850 else
58495851 elog (PANIC , "xact_redo: unknown op code %u" , info );
58505852}
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
111111 XACT_EVENT_PREPARE ,
112112 XACT_EVENT_PRE_COMMIT ,
113113 XACT_EVENT_PARALLEL_PRE_COMMIT ,
114- XACT_EVENT_PRE_PREPARE
114+ XACT_EVENT_PRE_PREPARE ,
115+ XACT_EVENT_POST_PREPARE
115116} XactEvent ;
116117
117118typedef void (* XactCallback ) (XactEvent event , void * arg );
@@ -399,6 +400,7 @@ extern void RegisterXactCallback(XactCallback callback, void *arg);
399400extern void UnregisterXactCallback (XactCallback callback , void * arg );
400401extern void RegisterSubXactCallback (SubXactCallback callback , void * arg );
401402extern void UnregisterSubXactCallback (SubXactCallback callback , void * arg );
403+ extern const char * GetPrepareGid (void );
402404
403405extern int xactGetCommittedChildren (TransactionId * * ptr );
404406
You can’t perform that action at this time.
0 commit comments