aboutsummaryrefslogtreecommitdiff
path: root/src/backend/access/transam/xlog.c
diff options
context:
space:
mode:
authorThomas Munro <tmunro@postgresql.org>2021-08-03 14:11:55 +1200
committerThomas Munro <tmunro@postgresql.org>2021-08-03 14:16:58 +1200
commit8f7c8e2bef2bd2587e5d66dd20de15f3db0a6bcb (patch)
tree9aa196b7d1d4370eb4a2b5bf2657526e1fd40fca /src/backend/access/transam/xlog.c
parentdb632fbca392389807ffb9d9b2207157e8e9b3e8 (diff)
downloadpostgresql-8f7c8e2bef2bd2587e5d66dd20de15f3db0a6bcb.tar.gz
postgresql-8f7c8e2bef2bd2587e5d66dd20de15f3db0a6bcb.zip
Further simplify a bit of logic in StartupXLOG().
Commit 7ff23c6d277d1d90478a51f0dd81414d343f3850 left us with two identical cases. Collapse them. Author: Robert Haas <robertmhaas@gmail.com> Discussion: https://postgr.es/m/CA%2BhUKGJ8NRsqgkZEnsnRc2MFROBV-jCnacbYvtpptK2A9YYp9Q%40mail.gmail.com
Diffstat (limited to 'src/backend/access/transam/xlog.c')
-rw-r--r--src/backend/access/transam/xlog.c34
1 files changed, 14 insertions, 20 deletions
diff --git a/src/backend/access/transam/xlog.c b/src/backend/access/transam/xlog.c
index f84c0bb01eb..8b39a2fdaa5 100644
--- a/src/backend/access/transam/xlog.c
+++ b/src/backend/access/transam/xlog.c
@@ -7890,28 +7890,22 @@ StartupXLOG(void)
* after we're fully out of recovery mode and already accepting
* queries.
*/
- if (ArchiveRecoveryRequested && IsUnderPostmaster)
+ if (ArchiveRecoveryRequested && IsUnderPostmaster &&
+ LocalPromoteIsTriggered)
{
- if (LocalPromoteIsTriggered)
- {
- promoted = true;
+ promoted = true;
- /*
- * Insert a special WAL record to mark the end of recovery,
- * since we aren't doing a checkpoint. That means that the
- * checkpointer process may likely be in the middle of a
- * time-smoothed restartpoint and could continue to be for
- * minutes after this. That sounds strange, but the effect is
- * roughly the same and it would be stranger to try to come
- * out of the restartpoint and then checkpoint. We request a
- * checkpoint later anyway, just for safety.
- */
- CreateEndOfRecoveryRecord();
- }
- else
- RequestCheckpoint(CHECKPOINT_END_OF_RECOVERY |
- CHECKPOINT_IMMEDIATE |
- CHECKPOINT_WAIT);
+ /*
+ * Insert a special WAL record to mark the end of recovery, since
+ * we aren't doing a checkpoint. That means that the checkpointer
+ * process may likely be in the middle of a time-smoothed
+ * restartpoint and could continue to be for minutes after this.
+ * That sounds strange, but the effect is roughly the same and it
+ * would be stranger to try to come out of the restartpoint and
+ * then checkpoint. We request a checkpoint later anyway, just for
+ * safety.
+ */
+ CreateEndOfRecoveryRecord();
}
else
{