From 4061ac8f84cc699bf0f417689f853791089ed472 Mon Sep 17 00:00:00 2001 From: Heikki Linnakangas Date: Fri, 23 Jan 2009 15:55:33 +0200 Subject: [PATCH] Remove knownProcessingMode variable. --- src/backend/access/transam/xlog.c | 19 ++++++++----------- 1 file changed, 8 insertions(+), 11 deletions(-) diff --git a/src/backend/access/transam/xlog.c b/src/backend/access/transam/xlog.c index 7e480e2fb2..e64fb48ccb 100644 --- a/src/backend/access/transam/xlog.c +++ b/src/backend/access/transam/xlog.c @@ -126,9 +126,11 @@ bool InRecovery = false; /* Are we recovering using offline XLOG archives? */ static bool InArchiveRecovery = false; -/* Local copy of shared RecoveryProcessingMode state */ +/* + * Local copy of shared RecoveryProcessingMode state. True actually + * means "not known, need to check the shared state" + */ static bool LocalRecoveryProcessingMode = true; -static bool knownProcessingMode = false; /* Was the last xlog file restored from archive, or local? */ static bool restoredFromArchive = false; @@ -5608,21 +5610,16 @@ StartupXLOG(void) bool IsRecoveryProcessingMode(void) { - if (knownProcessingMode && !LocalRecoveryProcessingMode) + if (!LocalRecoveryProcessingMode) return false; - + else { /* use volatile pointer to prevent code rearrangement */ volatile XLogCtlData *xlogctl = XLogCtl; - SpinLockAcquire(&xlogctl->mode_lck); - LocalRecoveryProcessingMode = XLogCtl->SharedRecoveryProcessingMode; - SpinLockRelease(&xlogctl->mode_lck); + LocalRecoveryProcessingMode = xlogctl->SharedRecoveryProcessingMode; + return LocalRecoveryProcessingMode; } - - knownProcessingMode = true; - - return LocalRecoveryProcessingMode; } /* -- 2.39.5