mirror of
https://github.com/postgres/postgres.git
synced 2025-10-19 15:49:24 +03:00
Replace XLOG_INCLUDE_XID flag with a more localized flag.
Commit 0bead9af48
introduced XLOG_INCLUDE_XID flag to indicate that the
WAL record contains subXID-to-topXID association. It uses that flag later
to mark in CurrentTransactionState that top-xid is logged so that we
should not try to log it again with the next WAL record in the current
subtransaction. However, we can use a localized variable to pass that
information.
In passing, change the related function and variable names to make them
consistent with what the code is actually doing.
Author: Dilip Kumar
Reviewed-by: Alvaro Herrera, Amit Kapila
Discussion: https://postgr.es/m/E1mSoYz-0007Fh-D9@gemulon.postgresql.org
This commit is contained in:
@@ -433,8 +433,8 @@ extern void UnregisterXactCallback(XactCallback callback, void *arg);
|
||||
extern void RegisterSubXactCallback(SubXactCallback callback, void *arg);
|
||||
extern void UnregisterSubXactCallback(SubXactCallback callback, void *arg);
|
||||
|
||||
extern bool IsSubTransactionAssignmentPending(void);
|
||||
extern void MarkSubTransactionAssigned(void);
|
||||
extern bool IsSubxactTopXidLogPending(void);
|
||||
extern void MarkSubxactTopXidLogged(void);
|
||||
|
||||
extern int xactGetCommittedChildren(TransactionId **ptr);
|
||||
|
||||
|
@@ -212,7 +212,6 @@ extern bool XLOG_DEBUG;
|
||||
*/
|
||||
#define XLOG_INCLUDE_ORIGIN 0x01 /* include the replication origin */
|
||||
#define XLOG_MARK_UNIMPORTANT 0x02 /* record not important for durability */
|
||||
#define XLOG_INCLUDE_XID 0x04 /* WAL-internal message-passing hack */
|
||||
|
||||
|
||||
/* Checkpoint statistics */
|
||||
@@ -258,7 +257,8 @@ struct XLogRecData;
|
||||
extern XLogRecPtr XLogInsertRecord(struct XLogRecData *rdata,
|
||||
XLogRecPtr fpw_lsn,
|
||||
uint8 flags,
|
||||
int num_fpi);
|
||||
int num_fpi,
|
||||
bool topxid_included);
|
||||
extern void XLogFlush(XLogRecPtr RecPtr);
|
||||
extern bool XLogBackgroundFlush(void);
|
||||
extern bool XLogNeedsFlush(XLogRecPtr RecPtr);
|
||||
|
Reference in New Issue
Block a user